Releases: gflewis/sndml3
3.1.2
Includes significant refactoring, JUnit changes, and Bash scripts.
Changes to connection profiles:
- Use ${varname} for environment variable interpolation.
- Add property
loader.metrics_folder
Bash scripts in bin
directory:
sndml-setup
- define bash functionsload-fg
- load foregroundload-bg
- load backgroundload-table
- load a single tablegenerate-create
- generate SQL for CREATE TABLEdelete-old-logs
Bash scripts and JUnit tests assume all files are in the configs
directory (previously this was named profiles
).
3.1.1
3.1.1 includes significant restructuring of JUnit tests.
Also included is a new columns
feature which restricts the columns that get loaded. Here is an example:
tables:
- {name: incident, columns: number state assignment_group assigned_to short_description}
The columns
argument can be a comma delimited or a space delimited list of field names. (A space delimited list is easier with YAML because you do not need to put it in quotes.)
sys_id
, sys_created_on
and sys_updated_on
are always loaded, regardless of whether or not they are included in the list.
The columns
setting uses sysparm_fields
to reduce the amount of data retrieved from ServiceNow. In theory, it should be possible to load large tables faster by using a short columns
list and a large pagesize
. It does not affect table creation. The database table will be created with all available columns, regardless of whether or not they are loaded.
3.1.0
3.1.0 includes significant changes
- The JDK has been upgraded from 1.7 to 1.8
- Open source drivers are now used for Oracle and MS SQL JDBC
- As a result of the above, it has been possible to greatly simplify pom.xml. The maven profile "git.release" is not required. The command "mvn package" now builds all JARs.
However, the most significant change is in how pagination works. OrderBy is eliminated as a Table setting. SNDML now always orders by "sys_id" when performing REST queries. The "sysparm_offset" parameter is no longer used. Instead the code uses "sys_id>lastvalue^ORDERBYsys_id" to read through the table. This change has improved reliability and fixed issues related to large tables containing ACLs which restrict visibility of some records.
3.0.3
3.0.2
3.0.1 - Initial Post-Beta Release
This is the initial post-beta release of SNDML3.
Changes since the beta 9:
- Default
OrderBy
is"sys_created_on,sys_id"
for improved reliability when loading large tables. Action: Sync
fixes.- Changes to Logging.
Please open an issue for any bugs or comments.
3.0.1 Beta 9
Beta 9 is the first release to support action: sync
.
3.0.1 Beta 8
In this release
- Fixed an issue where
Partition
loader aborted if zero records were processed. Created
now defaults to[void,start]
. In other words, the loader will not process records inserted after it starts running (unless you override thecreated
setting). Also it will not process records ifsys_created_on
is empty. To get these records specifycreated: [void,void], filter: sys_created_onISEMPTY
.- Added
orderby
optionorderby: +sys_id
- load will be ordered by sys_id, ascendingorderby: -sys_created_on
- load will be ordered by sys_created_on, descending- there is not currently a default
orderby
field
- Added
minrows
andmaxrows
options.minrows: 1
- abort if 0 rows are loadedmaxrows: 10000
- abort after loading 10000 rows
- Added
sqlbefore
andsqlafter
options. - Support for PostgreSQL.