[#112] Add basic documentation for placement policies #116
No reviewers
Labels
No labels
P0
P1
P2
P3
good first issue
pool
Infrastructure
blocked
bug
config
discussion
documentation
duplicate
enhancement
go
help wanted
internal
invalid
kludge
observability
perfomance
question
refactoring
wontfix
No milestone
No project
No assignees
5 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: TrueCloudLab/frostfs-sdk-go#116
Loading…
Reference in a new issue
No description provided.
Delete branch "ale64bit/frostfs-sdk-go:feature/112-policy-docs"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Doc can be previewed e.g. here: https://git.frostfs.info/ale64bit/frostfs-sdk-go/src/branch/feature/112-policy-docs/doc/policy.md
Signed-off-by: Alejandro Lopez a.lopez@yadro.com
32a18b60d3
to81bc661389
I really like the visualization!
@ -0,0 +75,4 @@
```sql
FILTER @RedNodes AND (City EQ 'Moscow') AS RedMoscowNodes
```
which would select those nodes for which the `Color` attribute equals `Red` and the `City` attribute equals `Moscow`. You can think of the `@` operator as embedding the referenced filter expression verbatim where it's used. This makes it easy to compose filters.
Can we explicitly mention that
@
can be used only inFILTER
section? I was confused a little why we don't use@
when refer to filter inSELECT
section for exampleThis is a good point. Done.
Perhaps we could consider removing the reference operator altogether? It's never ambiguous anyway within filter expressions. @fyrchik
@
is an operator which returns some expression (basically, a macro).In
SELECT
we just need a name.What do you mean by removing the reference operator? From the doc or from the grammar?
From the grammar. It doesn't resolve any ambiguity, so it can be removed.
Sure, but this sublanguage is purely declarative, so it has referential transparency: a filter identifier is the filter.
It can be used only within filter expressions, and in such context, an identifier can only refer to other filters, so there's no real need to qualify those with
@
. If this is somehow not desirable, then we can enforce that it's also needed when used inSELECT
so that its use is consistent.Ok, I see now. It wasn't part of this task, let's create a separate one.
To me
@
looks immediately readable, considerThe meaning depends on the context.
The reasons are historical, I believe, ANTLR should handle this now anyway.
Yes, it can be a different task.
To me they both look equally readable. The lack of readability might be from the example's choice of attribute name, e.g. a more natural/fair comparison would be
The meaning doesn't depend on the context at all. The syntax completely determines the type.
Yes, but still, you lose in readability IMO (to parse something you need to look ahead)
81bc661389
to53fc6a40e5