@@ -48,7 +48,7 @@ function prepareRowTableSchema(data: TTableDescription = {}): SchemaData[] {
48
48
const preparedColumns = Columns ?. map ( ( column ) => {
49
49
const { Id, Name, NotNull, Type, Family, DefaultFromSequence, DefaultFromLiteral} = column ;
50
50
51
- const isKeyColumn = Boolean ( KeyColumnIds ?. find ( ( keyColumnId ) => keyColumnId === Id ) ) ;
51
+ const keyColumnIndex = KeyColumnIds ?. findIndex ( ( keyColumnId ) => keyColumnId === Id ) ?? - 1 ;
52
52
53
53
const familyName = Family ? families [ Family ] . Name : undefined ;
54
54
const prefferedPoolKind = Family
@@ -59,7 +59,7 @@ function prepareRowTableSchema(data: TTableDescription = {}): SchemaData[] {
59
59
return {
60
60
id : Id ,
61
61
name : Name ,
62
- isKeyColumn ,
62
+ keyColumnIndex ,
63
63
type : Type ,
64
64
notNull : NotNull ,
65
65
autoIncrement : Boolean ( DefaultFromSequence ) ,
@@ -69,8 +69,8 @@ function prepareRowTableSchema(data: TTableDescription = {}): SchemaData[] {
69
69
columnCodec,
70
70
} ;
71
71
} ) ;
72
- const keyColumns = preparedColumns ?. filter ( ( column ) => column . isKeyColumn ) || [ ] ;
73
- const otherColumns = preparedColumns ?. filter ( ( column ) => ! column . isKeyColumn ) || [ ] ;
72
+ const keyColumns = preparedColumns ?. filter ( ( column ) => column . keyColumnIndex !== - 1 ) || [ ] ;
73
+ const otherColumns = preparedColumns ?. filter ( ( column ) => column . keyColumnIndex === - 1 ) || [ ] ;
74
74
75
75
return [ ...keyColumns , ...otherColumns ] ;
76
76
}
@@ -92,32 +92,31 @@ function prepareExternalTableSchema(data: TExternalTableDescription = {}): Schem
92
92
93
93
function prepareColumnTableSchema ( data : TColumnTableDescription = { } ) : SchemaData [ ] {
94
94
const { Schema = { } , Sharding = { } } = data ;
95
- const { Columns, KeyColumnNames } = Schema ;
95
+ const { Columns, KeyColumnIds } = Schema ;
96
96
const { HashSharding = { } } = Sharding ;
97
97
const { Columns : HashColumns = [ ] } = HashSharding ;
98
98
99
99
const preparedColumns = Columns ?. map ( ( column ) => {
100
100
const { Id, Name, Type, NotNull} = column ;
101
101
102
- const isKeyColumn = Boolean (
103
- KeyColumnNames ?. find ( ( keyColumnName ) => keyColumnName === Name ) ,
104
- ) ;
102
+ const keyColumnIndex = KeyColumnIds ?. findIndex ( ( keyColumnId ) => keyColumnId === Id ) ?? - 1 ;
103
+
105
104
const isPartitioningKeyColumn = Boolean (
106
105
HashColumns ?. find ( ( hashColumnName ) => hashColumnName === Name ) ,
107
106
) ;
108
107
109
108
return {
110
109
id : Id ,
111
110
name : Name ,
112
- isKeyColumn ,
111
+ keyColumnIndex ,
113
112
isPartitioningKeyColumn,
114
113
type : Type ,
115
114
notNull : NotNull ,
116
115
} ;
117
116
} ) ;
118
117
119
- const keyColumns = preparedColumns ?. filter ( ( column ) => column . isKeyColumn ) || [ ] ;
120
- const otherColumns = preparedColumns ?. filter ( ( column ) => ! column . isKeyColumn ) || [ ] ;
118
+ const keyColumns = preparedColumns ?. filter ( ( column ) => column . keyColumnIndex !== - 1 ) || [ ] ;
119
+ const otherColumns = preparedColumns ?. filter ( ( column ) => column . keyColumnIndex === - 1 ) || [ ] ;
121
120
122
121
return [ ...keyColumns , ...otherColumns ] ;
123
122
}
0 commit comments