HybridRow/test-data/CoverageSchema.json
David Noble c36b0adfe8
Feature/java/port from dotnet (#1)
* Add pom.xml placeholder and Hybrid Row whitepaper

* Checkpoint for safe keeping

* Progressed on port from dotnet to java

* Progressed on port from C# to Java

* Brought in Utf8AnyString.java

* Progressed on port from C# to Java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Updated documents releated to release of Microsoft Code under MIT License

* Updated JRE copyright notices

* Progressed on port from dotnet to java

* Renamed jre as java because Java is used to can refer to two things: the platform and the language. In this case we are referring to the Java Platform, not the Java Runtime Environment.

* Progressed on port

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on dotnet port to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Progressed on port from dotnet to java

* Code cleanup, especially in Utf8String class which is much improved.

* Progressed on port from dotnet to java.

* Simplified Utf8String some more

* Code cleanup

* Excluding most tests with the expectation that we'll bring them in as we continue to expand our test matrix.

* Added and debugged some tests

* Added and debugged some tests

* Added and debugged some tests

* Added, revised, and debugged some tests and test issues

* Added, revised, and debugged some tests and test issues

* Added, revised, and debugged some tests and test issues

* Optimized imports

* Removed dead code

* Updated java docs

* Added, revised, and debugged some tests and test issues

* Added, revised, and debugged some tests and test issues

* Added, revised, and debugged some tests and test issues

* Added, revised, and debugged some tests and test issues. Updated javadocs and pom.xml. We now add SystemSchema.json to azure-cosmos-serialization.jar. Javadocs don't currently build.

* Javadoc update

* Test update

* Progressed on deserializing schemas.

* Progressed on deserializing schemas.

* Progressed on deserializing schemas.

* testLoadSchmea passes

* code cleanup in prep for next step: loading a namespace that includes a schema with a udt: the one that the Spark connector team needs.

* code cleanup in prep for next step: loading a namespace that includes a schema with a udt: the one that the Spark connector team needs.

* RootSegment.json now loads

* Progressed on RowReader

* Progressed on RowReader

* RowReaderTest against RootSegment.json/RootSegment.hybridrow succeeds

* RowReaderTest against RootSegment.json/RootSegment.hybridrow succeeds

* Move RowScanner and DataItem out of test into main

* Move RowScanner and DataItem out of test into main

* Move RowScanner and DataItem out of test into main

* RowIterable now works. RowIterable and RowScanner now include indexes of array elements.

* RowIterable and RowScanner now support additional data types

* RowScanner now implements Iterable<DataItem> and RowIterable has been removed.

* POM now packages SystemSchema.json and SystemSchema class now loads the packaged SystemSchema.json

* Updated pom.xml with required licensing info and attempted to produce javadocs.

* Progressed on adding support for unsupported Utf8String features

* Refinements to Utf8String and Utf8StringTest

* Utf8StringTest improvements

* Refinements to Utf8String and Utf8StringTest

* Added caching of UTF-16 string caching to Utf8String to reduce the time and space cost of Utf8String.toUtf16(). Also: addressed a number of javadoc issues.

* Addressed a number of javadoc issues and the javadocs now build.

* Utf8String refinements with inefficient support instead of no support for Utf8String.charAt(int)

* Bumped netty.version and updated javadocs for Utf8String

* Code cleanup (javadoc improvements + tidying)

* Utf8String optimizations

* Tweaks

* Tweaks
2019-10-09 14:07:57 -07:00

211 lines
4.4 KiB
JSON

{
"schemas": [
{
"name": "myUDT", // Question: what should the namespace/structure of schema identifiers.
"id": 1,
"type": "schema", // Optional: implied at the top-level (only "schema" types can be defined at the root of schemas)
"options": {
"disallowUnschematized": false // Optional: defaults to false
},
"properties": [
{
"path": "a",
"type": {
"type": "int8",
"storage": "fixed"
}
},
{
"path": "b",
"type": {
"type": "utf8",
"storage": "variable"
}
}
]
},
{
"name": "someTable",
"id": -1,
"options": {
"disallowUnschematized": true
},
"properties": [
{
"path": "myBool",
"comment": "A sample fixed boolean column",
"type": {
"type": "bool",
"storage": "fixed"
}
},
{
"path": "myInt8",
"comment": "A sample fixed 8-byte integer column",
"type": {
"type": "int8",
"storage": "fixed"
}
},
{
"path": "nested.x",
"comment": "A sample nested integer column",
"type": {
"type": "int32",
"storage": "fixed"
}
},
{
"path": "nested.y",
"comment": "A sample nested float column",
"type": {
"type": "float32",
"storage": "fixed"
}
},
{
"path": "nested.deeper.z",
"comment": "A sample deeper nested double column",
"type": {
"type": "float64",
"storage": "fixed"
}
},
{
"path": "State",
"comment": "A sample fixed 2-byte UTF-8 encoded text column",
"type": {
"type": "utf8",
"storage": "fixed",
"length": 2
}
},
{
"path": "myString",
"comment": "A sample variable length UTF-8 encoded text column (up to 127 bytes)",
"type": {
"type": "utf8",
"storage": "variable"
}
},
{
"path": "lob",
"comment": "A sample extended UTF-8 encoded text column (up to 2M bytes)",
"type": {
"type": "utf8",
"storage": "sparse"
}
},
{
"path": "canbelob",
"comment":
"A sample extended UTF-8 encoded text column (up to 2M bytes) that stores variable if 'small' (<127 bytes), but sparse if 'large'",
"type": {
"type": "utf8",
"storage": "variable"
}
},
{
"path": "primitiveArray",
"comment": "A sample array of primitives (4-byte ints)",
"type": { "type": "array", "items": { "type": "int32" } }
},
{
"path": "shreddedArray[0]",
"comment": "A sample fixed-length array of primitives",
"type": { "type": "int32" }
},
{
"path": "shreddedArray[1]",
"comment": "A sample fixed-length array of primitives",
"type": { "type": "int32" }
},
{
"path": "nestedArray",
"comment": "A sample array of nested arrays",
"type": {
"type": "array",
"items": {
"type": "array",
"items": { "type": "int32" }
}
}
},
{
"path": "nestedNestedArray",
"comment": "A sample array of nested nested arrays",
"type": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "array",
"items": { "type": "int32" }
}
}
}
},
{
"path": "arrayOfObject",
"comment": "A sample array of semi-structured objects",
"type": {
"type": "array",
"items": {
"type": "object",
"properties": [
{
"path": "a",
"type": { "type": "int8" }
},
{
"path": "b",
"type": { "type": "utf8" }
}
]
}
}
},
{
"path": "arrayOfAny",
"comment": "A sample heterogenous array",
"type": {
"type": "array",
"items": { "type": "any" }
}
},
{
"path": "arrayOfUDT",
"comment": "A sample array of schematized rows",
"type": {
"type": "array",
"items": {
"type": "schema",
"name": "myUDT" // see definition above - should this be called $ref or ref or something?
}
}
},
{
"path": "nestedObject",
"comment": "A sample nested objects",
"type": {
"type": "object",
"properties": [
{
"path": "a",
"type": {
"type": "int8"
}
},
{
"path": "b",
"type": {
"type": "utf8"
}
}
]
}
}
]
}
]
}