Status Update
Comments
[Deleted User] <[Deleted User]> #2
I cannot repro this exactly do you need?
var isRefreshing by rememberSaveable { mutableStateOf(false) }
I think my latest change helps with these kind of issues too
But It hasn't been released yet.
Any chance you can upload the full sample on github, so I can double check?
mo...@google.com <mo...@google.com> #3
mo...@google.com <mo...@google.com> #5
Thanks I think I was able to identify the issue and a potential fix
re...@gmail.com <re...@gmail.com> #7
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.compose.material3:material3:1.4.0-alpha01
androidx.compose.material3:material3-android:1.4.0-alpha01
mo...@google.com <mo...@google.com> #8
Project: platform/frameworks/support
Branch: androidx-main
Author: Mariano Martin <
Link:
[WideNavigationRail] API Feedback
Expand for full commit details
[WideNavigationRail] API Feedback
Update State classes to use booleans, and current/target value.
Change expect/actual properties constructor.
Test: existing tests
Relnote: Change WideNavigationRailState to have current/target value, remove enums in favor of boolean.
Bug: 356039090
Change-Id: Idfa29aad7efd1d0e943bf175f5bcb1fc347fdf0e
Files:
- M
compose/material3/benchmark/src/androidTest/java/androidx/compose/material3/benchmark/NavigationRailBenchmark.kt
- M
compose/material3/material3/api/current.txt
- M
compose/material3/material3/api/restricted_current.txt
- M
compose/material3/material3/samples/src/main/java/androidx/compose/material3/samples/NavigationRailSamples.kt
- M
compose/material3/material3/src/androidInstrumentedTest/kotlin/androidx/compose/material3/ModalWideNavigationRailScreenshotTest.kt
- M
compose/material3/material3/src/androidInstrumentedTest/kotlin/androidx/compose/material3/ModalWideNavigationRailTest.kt
- M
compose/material3/material3/src/androidInstrumentedTest/kotlin/androidx/compose/material3/WideNavigationRailScreenshotTest.kt
- M
compose/material3/material3/src/androidInstrumentedTest/kotlin/androidx/compose/material3/WideNavigationRailTest.kt
- M
compose/material3/material3/src/androidMain/kotlin/androidx/compose/material3/WideNavigationRail.android.kt
- M
compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/WideNavigationRail.kt
- M
compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/WideNavigationRailState.kt
- M
compose/material3/material3/src/commonStubsMain/kotlin/androidx/compose/material3/WideNavigationRail.commonStubs.kt
Hash: 724c3f7eb85d05c92ce724d5c529f579d771edd4
Date: Mon Nov 18 13:19:35 2024
[Deleted User] <[Deleted User]> #9
"FOR SYSTEM TIME AS OF" is not documented there. DB2 supports that clause; in that context I'm asking for "FOR SYSTEM TIME FROM ? TO ?"
Thanks.
gq...@brightcove.com <gq...@brightcove.com> #10
mo...@google.com <mo...@google.com> #11
gq...@brightcove.com <gq...@brightcove.com> #12
Using FOR SYSTEM TIME SINCE result in an ever increasing number of rows being touched as the table grows, making it impossible to run a query on the table economically. If we had FOR SYSTEM TIME SINCE; which is equivalent to the tail, we could harvest rows from the tail of the table in real time. This is what allows us to generate time series statistics for our application. Table decorators were a crucial feature that drove our decision to use Bigquery for our applications. Without it (and I mean the full functionality of decorators), we do not have a viable solution and will have to look elsewhere for supporting technology. This is a deal breaker for us.
gq...@brightcove.com <gq...@brightcove.com> #13
[Deleted User] <[Deleted User]> #14
di...@monzo.com <di...@monzo.com> #15
[Deleted User] <[Deleted User]> #16
[Deleted User] <[Deleted User]> #17
[Deleted User] <[Deleted User]> #18
[Deleted User] <[Deleted User]> #19
[Deleted User] <[Deleted User]> #20
[Deleted User] <[Deleted User]> #21
r....@gmail.com <r....@gmail.com> #22
ku...@xiatech.co.uk <ku...@xiatech.co.uk> #23
[Deleted User] <[Deleted User]> #24
mo...@google.com <mo...@google.com> #25
[Deleted User] <[Deleted User]> #26
[Deleted User] <[Deleted User]> #27
bh...@motorola.com <bh...@motorola.com> #28
bh...@motorola.com <bh...@motorola.com> #29
[Deleted User] <[Deleted User]> #30
[Deleted User] <[Deleted User]> #31
[Deleted User] <[Deleted User]> #32
[Deleted User] <[Deleted User]> #33
da...@geotab.com <da...@geotab.com> #34
bl...@domainmigrate.com <bl...@domainmigrate.com> #35
[Deleted User] <[Deleted User]> #36
[Deleted User] <[Deleted User]> #37
fe...@lindenlab.com <fe...@lindenlab.com> #38
[Deleted User] <[Deleted User]> #39
[Deleted User] <[Deleted User]> #40
bo...@qubit.com <bo...@qubit.com> #41
[Deleted User] <[Deleted User]> #42
fe...@lindenlab.com <fe...@lindenlab.com> #43
mo...@google.com <mo...@google.com> #44
fe...@lindenlab.com <fe...@lindenlab.com> #45
ak...@gmail.com <ak...@gmail.com> #46
bi...@insparx.com <bi...@insparx.com> #47
[Deleted User] <[Deleted User]> #48
ax...@insparx.com <ax...@insparx.com> #49
mo...@google.com <mo...@google.com> #50
SELECT ... FROM Table FOR SYSTEM TIME AS OF <timestamp_expression>
bl...@tableau.com <bl...@tableau.com> #51
di...@monzo.com <di...@monzo.com> #52
mo...@google.com <mo...@google.com> #53
[Deleted User] <[Deleted User]> #54
I could imagine that "added" refers to the insert time, but which time is used for "as of an hour ago"?
mo...@google.com <mo...@google.com> #55
[Deleted User] <[Deleted User]> #56
fe...@lindenlab.com <fe...@lindenlab.com> #57
[Deleted User] <[Deleted User]> #58
If something is dropped from the new version, the existing customers are effectively locked into the old world. And that leads either to locking Google into the old world as well or losing the customer with forced migration.
I have observed the relaxed attitude to maintaining feature parity across the number of products, which is quite concerning.
mo...@google.com <mo...@google.com> #59
gq...@brightcove.com <gq...@brightcove.com> #60
[Deleted User] <[Deleted User]> #61
And while there is no _explicit_ push to use standard SQL, my understanding is that the new features are added into the new version only.
Also would like to note that corporate decision makers are extremely risk averse - operational and functional stability is paramount for the business operations, where they do not care much for technical details, but care about the sudden cost increases.
Again, this particular case is a single episode of the general trend - and that's concerning.
mo...@google.com <mo...@google.com> #62
While we do have internal issue tracked for equivalent of "range decorators", I don't see public one. I don't mind if we keep using this issue to cover range as well once snapshot ships, or if someone opens new public issue.
gq...@brightcove.com <gq...@brightcove.com> #63
mo...@google.com <mo...@google.com> #64
I am also interested to learn about cost increases mentioned in #61 - is it similar case or something else ?
[Deleted User] <[Deleted User]> #65
The corporate environment, while caring for technical ingenuity, does NOT put it as the priority number one. Priority number one is stability and predictability.
The shape Standard SQL has been made available initially led to a few issues on our side as well. One example - we started to implement a complex solution on Standard SQL only to find out at the end of the process that there was a showstopper bug with unknown ETA for the fix.
Had to re-implement using the Legacy SQL, losing about 4 days. The fix took more than a month to arrive.
mo...@google.com <mo...@google.com> #66
[Deleted User] <[Deleted User]> #67
gq...@brightcove.com <gq...@brightcove.com> #68
When you call a product legacy it's for a reason. Let's not pretend that the intent was to support legacy forever.
If you read
"Range based decorators are more problematic than point in time, and are not targeted for standard SQL at this time."
It shows that the plan to support decorators in standard SQL, and to what extent, is still evolving. I suspect that the popularity of this feature to your customer base was something that surprised the Standard SQL development team.
mo...@google.com <mo...@google.com> #69
Indeed range decorators is one of the least popular features in BigQuery, with usage both by query volume and active projects around 1%. However even though that usage is small, it is not insignificant, and for users who depend on it their no immediate replacement. At this time there is no solution for range decorators in Standard SQL, we will keep looking into how to make them possible. Your feedback in this thread is a motivation to accelerate that effort.
[Deleted User] <[Deleted User]> #70
I also find that the standard dialect is incredibly poorly documented, and I seriously struggle with accomplishing what I easily do in the legacy dialect, even with the help of documentation, Google Search, StackOverflow, etc, so it could be that most of the features are there, but they're not accessible.
mo...@google.com <mo...@google.com> #71
fe...@lindenlab.com <fe...@lindenlab.com> #72
I am guessing the reason you have not seen it used much is that using BQ for realtime reporting is probably fairly recent. Mostly people use time series db for real time reporting. But for us, which have a lot of real time processing to implement on our new database in BQ, this was one of the features that made us choose BQ over other dbs.
[Deleted User] <[Deleted User]> #73
But as a lot of commenters here say: The range based decorators are still missing. We will need this in the (near) future to be able to do cost-controlled 'near realtime monitoring' on our streaming event data. So, we too need something like: 'since last timestamp'.
mo...@google.com <mo...@google.com> #74
[Deleted User] <[Deleted User]> #75
[Deleted User] <[Deleted User]> #76
bl...@tableau.com <bl...@tableau.com> #77
gq...@brightcove.com <gq...@brightcove.com> #78
mo...@google.com <mo...@google.com> #79
[Deleted User] <[Deleted User]> #80
Although we could have built this "10 minute" use case on streaming, everything starts as files in GS so a load job is quick and reliable. I would revert back to legacy SQL but I built STRUCT columns into the target schema so I'm stuck. BigQuery is a great product; I'm not unhappy with the state of affairs. C'est la vie.
ke...@gmail.com <ke...@gmail.com> #81
That said, hourly partitioning is also a +1 - one additional benefit of this is that it would allow you to solve the problem of supporting different timezones in reporting without one timezone costing much more - in cost and performance - than the other (due to having to hit two daily partitions instead of one).
bl...@tableau.com <bl...@tableau.com> #82
Those snapshots have been one of my uses cases for recovering deleted tables after the 2-day recovery period expires. I'd love for them to exist in standard SQL as well -- but I suppose that may not be a huge use-case.
mo...@google.com <mo...@google.com> #83
[Deleted User] <[Deleted User]> #84
Having hourly based time partitioning VS day based would already improve this!
gq...@brightcove.com <gq...@brightcove.com> #85
[Deleted User] <[Deleted User]> #86
[Deleted User] <[Deleted User]> #87
fe...@lindenlab.com <fe...@lindenlab.com> #88
ti...@gmail.com <ti...@gmail.com> #89
hi...@gmail.com <hi...@gmail.com> #90
po...@gmail.com <po...@gmail.com> #91
"Table decorators are currently unsupported in standard SQL" is incorrect. Should be "*Range based* table decorators are currently unsupported in standard SQL"
mo...@google.com <mo...@google.com> #92
po...@gmail.com <po...@gmail.com> #93
Do you not think it's worth at least mentioning the "FOR SYSTEM TIME AS OF" in the documentation so people can easily know it can be achieved now in standard SQL?
na...@nytimes.com <na...@nytimes.com> #94
[Deleted User] <[Deleted User]> #95
[Deleted User] <[Deleted User]> #96
ju...@google.com <ju...@google.com> #97
[Deleted User] <[Deleted User]> #98
fi...@gmail.com <fi...@gmail.com> #99
ch...@gmail.com <ch...@gmail.com> #100
ad...@gmail.com <ad...@gmail.com> #101
ma...@ml6.eu <ma...@ml6.eu> #102
sc...@wunderkind.co <sc...@wunderkind.co> #103
za...@sadan.me <za...@sadan.me> #104
za...@protected.media <za...@protected.media> #105
sm...@gmail.com <sm...@gmail.com> #106
mr...@gmail.com <mr...@gmail.com> #107
dm...@gmail.com <dm...@gmail.com> #108
[Deleted User] <[Deleted User]> #109
ge...@gmail.com <ge...@gmail.com> #110
[Deleted User] <[Deleted User]> #111
ph...@gmail.com <ph...@gmail.com> #112
no...@gmail.com <no...@gmail.com> #113
po...@gmail.com <po...@gmail.com> #114
da...@myersholum.com <da...@myersholum.com> #115
er...@condenast.com <er...@condenast.com> #116
st...@egym.com <st...@egym.com> #117
ja...@gmail.com <ja...@gmail.com> #118
ak...@google.com <ak...@google.com> #119
yk...@google.com <yk...@google.com> #120
yu...@fastretailing.com <yu...@fastretailing.com> #121
ry...@fastretailing.com <ry...@fastretailing.com> #122
dh...@postmates.com <dh...@postmates.com> #123
[Deleted User] <[Deleted User]> #124
[Deleted User] <[Deleted User]> #125
[Deleted User] <[Deleted User]> #126
[Deleted User] <[Deleted User]> #127
an...@unity3d.com <an...@unity3d.com> #128
pm...@atso.com <pm...@atso.com> #129
[Deleted User] <[Deleted User]> #130
th...@gmail.com <th...@gmail.com> #131
ms...@bol.com <ms...@bol.com> #132
However, Range Decorators are not implemented (yet?) in standard SQL.
fz...@gmail.com <fz...@gmail.com> #133
aw...@gmail.com <aw...@gmail.com> #134
al...@nine.com.au <al...@nine.com.au> #135
th...@ozon.io <th...@ozon.io> #136
[Deleted User] <[Deleted User]> #137
l....@gmail.com <l....@gmail.com> #138
gp...@bendingspoons.com <gp...@bendingspoons.com> #139
[Deleted User] <[Deleted User]> #140
il...@weel.com <il...@weel.com> #141
ku...@google.com <ku...@google.com> #142
+1
wa...@soundcloud.com <wa...@soundcloud.com> #143
ra...@gmail.com <ra...@gmail.com> #144
ro...@gmail.com <ro...@gmail.com> #145
74...@gmail.com <74...@gmail.com> #146
fl...@gmail.com <fl...@gmail.com> #147
pe...@aliz.ai <pe...@aliz.ai> #148
[Deleted User] <[Deleted User]> #149
[Deleted User] <[Deleted User]> #150
tr...@veolia.com <tr...@veolia.com> #151
[Deleted User] <[Deleted User]> #152
pr...@google.com <pr...@google.com> #153
on...@trendyol.com <on...@trendyol.com> #154
mu...@trendyol.com <mu...@trendyol.com> #155
+1
[Deleted User] <[Deleted User]> #156
fa...@trendyol.com <fa...@trendyol.com> #157
[Deleted User] <[Deleted User]> #158
[Deleted User] <[Deleted User]> #159
dm...@snapchat.com <dm...@snapchat.com> #160
st...@google.com <st...@google.com> #161
ma...@motorola.com <ma...@motorola.com> #162
bh...@motorola.com <bh...@motorola.com> #163
ma...@motorola.com <ma...@motorola.com> #164
[Deleted User] <[Deleted User]> #165
ve...@google.com <ve...@google.com>
el...@gmail.com <el...@gmail.com> #166
pr...@codechilli.lk <pr...@codechilli.lk> #167
bw...@google.com <bw...@google.com>
vi...@trmlabs.com <vi...@trmlabs.com> #168
kn...@exchacc.ericsson.com <kn...@exchacc.ericsson.com> #169
ju...@king.com <ju...@king.com> #170
[Deleted User] <[Deleted User]> #171
li...@cityswift.com <li...@cityswift.com> #172
ju...@smartproxy.com <ju...@smartproxy.com> #173
ni...@nordeus.com <ni...@nordeus.com> #174
ag...@ourgapps.com <ag...@ourgapps.com> #175
ma...@gmail.com <ma...@gmail.com> #176
bw...@google.com <bw...@google.com>
ni...@google.com <ni...@google.com> #177
Re-assigning this feature request to Candice, as this is in her wheelhouse.
bw...@google.com <bw...@google.com> #178
Actually, this is provided though change history:
Description