korlov42 commented on a change in pull request #8490:
URL: https://github.com/apache/ignite/pull/8490#discussion_r571652445



##########
File path: 
modules/core/src/main/java/org/apache/ignite/internal/cache/query/index/sorted/SortedIndexSchema.java
##########
@@ -15,25 +15,40 @@
  * limitations under the License.
  */
 
-package org.apache.ignite.internal.processors.query.h2.database.inlinecolumn;
+package org.apache.ignite.internal.cache.query.index.sorted;
 
-import org.h2.table.Column;
-import org.h2.value.Value;
-import org.h2.value.ValueStringFixed;
+import org.apache.ignite.internal.processors.cache.persistence.CacheDataRow;
 
 /**
- * Inline index column implementation for inlining strings of fixed length.
+ * Schema for sorted index.
  */
-public class FixedStringInlineIndexColumn extends StringInlineIndexColumn {
+public interface SortedIndexSchema {
     /**
-     * @param col Column.
+     * Describe all index keys.
      */
-    public FixedStringInlineIndexColumn(Column col, boolean 
useOptimizedCompare) {
-        super(col, Value.STRING_FIXED, useOptimizedCompare, false);
-    }
+    public IndexKeyDefinition[] getKeyDefinitions();

Review comment:
       > IndexDefinition contains instructions on how to create an index and 
which parameters it has
   
   and with this in mind IndexDefinition is the best place for 
IndexKeyDefinition[]. Furthermore this is the way it's defined in IEP.
   
   BTW why have you decided not to follow abstractions defined in IEP?
   
   > Schema is responsible for mapping cache entry on index rows.
   
   It's better to introduce something like this: 
   ```
   public interface RowHandler<Row> {
       /** */
       Object get(int field, Row row);
   
       /** */
       int columnCount(Row row);
   }
   ```




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to