210 lines
4.9 KiB
YAML
210 lines
4.9 KiB
YAML
name: compound filter
|
|
nodes:
|
|
- attributes:
|
|
- key: Storage
|
|
value: SSD
|
|
- key: Rating
|
|
value: '10'
|
|
- key: IntField
|
|
value: '100'
|
|
- key: Param
|
|
value: Value1
|
|
tests:
|
|
good:
|
|
policy:
|
|
replicas:
|
|
- count: 1
|
|
selector: S
|
|
containerBackupFactor: 1
|
|
selectors:
|
|
- name: S
|
|
count: 1
|
|
clause: DISTINCT
|
|
filter: Main
|
|
filters:
|
|
- name: StorageSSD
|
|
key: Storage
|
|
op: EQ
|
|
value: SSD
|
|
filters: []
|
|
- name: GoodRating
|
|
key: Rating
|
|
op: GE
|
|
value: '4'
|
|
filters: []
|
|
- name: Main
|
|
op: AND
|
|
filters:
|
|
- name: StorageSSD
|
|
op: OPERATION_UNSPECIFIED
|
|
filters: []
|
|
- name: ''
|
|
key: IntField
|
|
op: LT
|
|
value: '123'
|
|
filters: []
|
|
- name: GoodRating
|
|
op: OPERATION_UNSPECIFIED
|
|
filters: []
|
|
- op: OR
|
|
filters:
|
|
- key: Param
|
|
op: EQ
|
|
value: Value1
|
|
filters: []
|
|
- key: Param
|
|
op: EQ
|
|
value: Value2
|
|
filters: []
|
|
result:
|
|
- - 0
|
|
bad storage type:
|
|
policy:
|
|
replicas:
|
|
- count: 1
|
|
selector: S
|
|
containerBackupFactor: 1
|
|
selectors:
|
|
- name: S
|
|
count: 1
|
|
clause: DISTINCT
|
|
filter: Main
|
|
filters:
|
|
- name: StorageSSD
|
|
key: Storage
|
|
op: EQ
|
|
value: HDD
|
|
filters: []
|
|
- name: GoodRating
|
|
key: Rating
|
|
op: GE
|
|
value: '4'
|
|
filters: []
|
|
- name: Main
|
|
op: AND
|
|
filters:
|
|
- name: StorageSSD
|
|
op: OPERATION_UNSPECIFIED
|
|
filters: []
|
|
- name: ''
|
|
key: IntField
|
|
op: LT
|
|
value: '123'
|
|
filters: []
|
|
- name: GoodRating
|
|
op: OPERATION_UNSPECIFIED
|
|
filters: []
|
|
- name: ''
|
|
op: OR
|
|
filters:
|
|
- name: ''
|
|
key: Param
|
|
op: EQ
|
|
value: Value1
|
|
filters: []
|
|
- name: ''
|
|
key: Param
|
|
op: EQ
|
|
value: Value2
|
|
filters: []
|
|
error: not enough nodes
|
|
bad rating:
|
|
policy:
|
|
replicas:
|
|
- count: 1
|
|
selector: S
|
|
containerBackupFactor: 1
|
|
selectors:
|
|
- name: S
|
|
count: 1
|
|
clause: DISTINCT
|
|
filter: Main
|
|
filters:
|
|
- name: StorageSSD
|
|
key: Storage
|
|
op: EQ
|
|
value: SSD
|
|
filters: []
|
|
- name: GoodRating
|
|
key: Rating
|
|
op: GE
|
|
value: '15'
|
|
filters: []
|
|
- name: Main
|
|
op: AND
|
|
filters:
|
|
- name: StorageSSD
|
|
op: OPERATION_UNSPECIFIED
|
|
filters: []
|
|
- name: ''
|
|
key: IntField
|
|
op: LT
|
|
value: '123'
|
|
filters: []
|
|
- name: GoodRating
|
|
op: OPERATION_UNSPECIFIED
|
|
filters: []
|
|
- name: ''
|
|
op: OR
|
|
filters:
|
|
- name: ''
|
|
key: Param
|
|
op: EQ
|
|
value: Value1
|
|
filters: []
|
|
- name: ''
|
|
key: Param
|
|
op: EQ
|
|
value: Value2
|
|
filters: []
|
|
error: not enough nodes
|
|
bad param:
|
|
policy:
|
|
replicas:
|
|
- count: 1
|
|
selector: S
|
|
containerBackupFactor: 1
|
|
selectors:
|
|
- name: S
|
|
count: 1
|
|
clause: DISTINCT
|
|
filter: Main
|
|
filters:
|
|
- name: StorageSSD
|
|
key: Storage
|
|
op: EQ
|
|
value: SSD
|
|
filters: []
|
|
- name: GoodRating
|
|
key: Rating
|
|
op: GE
|
|
value: '4'
|
|
filters: []
|
|
- name: Main
|
|
op: AND
|
|
filters:
|
|
- name: StorageSSD
|
|
op: OPERATION_UNSPECIFIED
|
|
filters: []
|
|
- name: ''
|
|
key: IntField
|
|
op: LT
|
|
value: '123'
|
|
filters: []
|
|
- name: GoodRating
|
|
op: OPERATION_UNSPECIFIED
|
|
filters: []
|
|
- name: ''
|
|
op: OR
|
|
filters:
|
|
- name: ''
|
|
key: Param
|
|
op: EQ
|
|
value: Value0
|
|
filters: []
|
|
- name: ''
|
|
key: Param
|
|
op: EQ
|
|
value: Value2
|
|
filters: []
|
|
error: not enough nodes
|