Clone Tools
  • last updated 27 mins ago
Constraints: committers
Constraints: files
Constraints: dates
Move AsterixDB to Subfolder

  1. … 44148 more files in changeset.
Almost full support for clean JSON, plus some lossless JSON fixes

Clean JSON correctly supports all numeric and spatial types, plus hex and uuid.

Lossless JSON correctly supports uuid and hex, and "circle" is correct now.

Date/time types remain unfixed for both JSON formats.

Change-Id: I5c37d3b5aad7f286eba1cb8cb5f05ad456a6521d


Tested-by: Jenkins <>

Reviewed-by: Chris Hillery <>

  1. … 46 more files in changeset.
Add the Binary data type and corresponding helper functions to Asterix.

The binary data type is implemented as a bytearray. Its storage format

follows the String type which has 2 bytes for length and then store the

bytes contents.

Binary data will take hex("") or base64("") as the constructor method to

passing a hex string or base64 string into Asterix. For output we use

hex("") format.

The parse-[hex|base64](string) function will parse the corresponding hex

or base64 string to binary type. The print-[hex|base64](binary)

functions will print the binary to hex or base64 STRING format.

The sub-binary(binary, offset, [length]) function works the same as

substring(string, offset, [length])

The find-binary(srcbinary, targetbinary, [start-offset]) will find the

position of the targetbinary in the srcbinary.

Change-Id: I5ecf0cc115c44070fb5c1fc5b0ec12a95d4243a4


Tested-by: Jenkins <>

Reviewed-by: Yingyi Bu <>

  1. … 127 more files in changeset.
Check that user's data is sorted if load statement does not have the *pre-sorted* assertion.

Fixed erroneous test cases that loaded a file with a duplicate key.

  1. … 12 more files in changeset.
Merged asterix_lsm_stabilization upto r1547

git-svn-id: eaa15691-b419-025a-1212-ee371bd00084

  1. … 6218 more files in changeset.
Addressing review comments from Zach on r338 for temporal types fix. The following changes are done: - Removed the timezone information for date data type. - Refactored the parsers for date, time and duration to reuse the code between serDer and constructor. - Added comments for opaque codes. - We keep the concept of negative duration; although it is not a part in the ISO 8601 standard (but XML does), it would be used later when we need to support arithmetic operations between time instances. - Date, time and duration is updated to fail-fast if the millisecond field is more than 3 digits. - Bug fixing: missing "T" separator in ADateTime type.

git-svn-id: eaa15691-b419-025a-1212-ee371bd00084

  1. … 34 more files in changeset.
Updated the implementation of ADate and ADuration to follow the ISO8601 standard. The following changes are included: - Added new implementation of ADate: now with support to ISO8601 extended and basic representations; internal storage uses an integer as the number of days since 1970-01-01Z; negative year support (proleptic Gregorian calendar system). - Added new implementation of ADuration: ISO8601 support; now support arbitrary field value (like P120D representing 120 days); support millisecond duration; internally a duration is represented as a year-month field and a day-to-second field. - Refactored GregorianCalendarSystem implementation to move functions close to their caller (so the class is skimmed). - Refactored the ATime and ADateTime implementation to follow the same implementation pattern as ADate and ADuration.

This commit fixes issue 106, issue 107 and issue 116.

git-svn-id: eaa15691-b419-025a-1212-ee371bd00084

  1. … 35 more files in changeset.
Fix of the ATime representation and serdes according to the ISO8601

git-svn-id: eaa15691-b419-025a-1212-ee371bd00084

  1. … 12 more files in changeset.
Refactored the ADateTime type: - Added a new interface for calendar system; - Added an implementation of the calendar system for the gregorian calendar system; - Re-implemented the ADateTime type using a millisecond-based internal representation, which fixes issue 107; - Implemented the comparison between ADateTime values based on the internal millisecond-based representation, so the comparison is processed between two long integers (Int64 eliminates the YEAR2038 problem). This fixes issue 106; - ADateTime now is ISO8601-compatible; - Updated test AQLs and their answers to have ISO8601-compatible representation of ADateTime values.


- New issue: ADate and ATime should be updated to be ISO8601-compatible;

- More test cases.

git-svn-id: eaa15691-b419-025a-1212-ee371bd00084

  1. … 15 more files in changeset.
Added asterix project

git-svn-id: eaa15691-b419-025a-1212-ee371bd00084

  1. … 1978 more files in changeset.