public RowSchema(MatrixSchema<M> matrixSchema) { super(matrixSchema.getColumns(), 1, matrixSchema.type, FieldReferenceOffsetManager.buildSingleNumberBlockFrom(matrixSchema.columns, matrixSchema.type.typeMask, "Matrix")); this.root = matrixSchema; }
public DecimalSchema(MatrixSchema<M> matrixSchema) { super(matrixSchema.getColumns(), 1, MatrixTypes.Decimals, FieldReferenceOffsetManager.buildSingleNumberBlockFrom(matrixSchema.columns, MatrixTypes.Decimals.typeMask, "Matrix")); }
public static MatrixSchema buildResultSchema(MatrixSchema leftSchema, MatrixSchema rightSchema) { assert(leftSchema.type == rightSchema.type); return buildSchema(leftSchema.getRows(), rightSchema.getColumns(), leftSchema.type); }
this.remainingRows = rowLimit; if (cSchema.getColumns() != rRows) { throw new UnsupportedOperationException("column count of left input must match row count of right input "+cSchema.getColumns()+" vs "+rRows); if (resultSchema.getColumns() != rCols) { throw new UnsupportedOperationException("column count of right input must match result output "+ rCols+" vs "+resultSchema.getColumns()); throw new UnsupportedOperationException("rows count of left input must match result output "+cSchema.getColumns()+" vs "+resultSchema.getRows());
/** * * @param graphManager * @param input _in_ Input pipe as matrix with RowSchema * @param output _out_ Output pipe in which RowSchema is converted to DecimalSchema */ public ConvertToDecimalStage(GraphManager graphManager, Pipe<RowSchema<M>> input, Pipe<DecimalSchema<M>> output) { super(graphManager, input, output); this.input = input; this.output = output; M schema = (M) input.config().schema(); this.blockSize = schema.getRows()*schema.getColumns(); this.inputType = schema.type; }
/** * * @param graphManager * @param columnPipeInput _in_ Pipes containing ColumnSchema that will be converted to RowSchema * @param matrixPipeOutput _out_ Pipes onto which ColumnSchema will be output to RowSchema */ public ColumnsToRowsStage(GraphManager graphManager, Pipe<ColumnSchema<M>>[] columnPipeInput, Pipe<RowSchema<M>> matrixPipeOutput) { super(graphManager, columnPipeInput, matrixPipeOutput); M matrixSchema = (M) matrixPipeOutput.config().schema().rootSchema(); this.columnPipeInput = columnPipeInput; this.matrixPipeOutput = matrixPipeOutput; this.matrixSchema = matrixSchema; this.shutdownCount = columnPipeInput.length; this.typeSize = matrixSchema.typeSize; this.rowLimit = matrixSchema.getRows(); this.columnLimit = matrixSchema.getColumns(); this.remainingRows = rowLimit; assert(columnLimit==columnPipeInput.length); this.colSizeOf = Pipe.sizeOf(columnPipeInput[0], matrixSchema.columnId); this.matrixSize = Pipe.sizeOf(matrixPipeOutput, matrixSchema.rowId); }
splitterPipes[--splitterPipesCount] = pipe, outputs, resultSchema, leftSchema, rightSchema.getRows(), rightSchema.getColumns(), rightSchema.type); return splitterPipesCount;
PipeConfig<ColumnSchema<M>> columnConfig = new PipeConfig<ColumnSchema<M>>(cs, 2); Pipe[] intputAsColumns = new Pipe[schema.getColumns()]; int i = schema.getColumns(); ByteArrayOutputStream[] targets = new ByteArrayOutputStream[i]; PronghornStage[] watch = new PronghornStage[i]; for(int r=0;r<schema.getColumns();r++) { Pipe.addIntValue(c, inputRows); i = schema.getColumns(); while (--i>=0) { GraphManager.blockUntilStageBeginsShutdown(gm, watch[i], 500);//timeout in ms i = schema.getColumns(); while (--i>=0) { String actualText = new String(targets[i].toByteArray());
PipeConfig<ColumnSchema<M>> columnConfig = new PipeConfig<ColumnSchema<M>>(cs, 2); Pipe<ColumnSchema<M>>[] columnsPipes = new Pipe[schema.getColumns()];
int i = rightSchema.getColumns();
assertTrue(resultSchema.getColumns()==rightColumns); assertTrue(leftSchema.getColumns()==leftColumns); assertTrue(rightSchema.getColumns()==rightColumns);
assertTrue(resultSchema.getColumns()==rightColumns); assertTrue(leftSchema.getColumns()==leftColumns); assertTrue(rightSchema.getColumns()==rightColumns);