From 3cc01aca08a75f5ca298610e41c69215a2833fea Mon Sep 17 00:00:00 2001 From: trisberg Date: Thu, 30 Oct 2008 18:27:21 +0000 Subject: [PATCH] BATCH-885: fixed to match current schema --- .../docbook/reference/schema-appendix.xml | 35 ++++++++++++------ .../reference/images/meta-data-schema.png | Bin 0 -> 41889 bytes 2 files changed, 23 insertions(+), 12 deletions(-) create mode 100644 docs/src/site/resources/reference/images/meta-data-schema.png diff --git a/docs/src/site/docbook/reference/schema-appendix.xml b/docs/src/site/docbook/reference/schema-appendix.xml index 56826ce37..0e4f3197a 100644 --- a/docs/src/site/docbook/reference/schema-appendix.xml +++ b/docs/src/site/docbook/reference/schema-appendix.xml @@ -11,7 +11,7 @@ objects that represent them in Java. For example, JobInstance, JobExecution, JobParameters, StepExecution, and ExecutionContext map to BATCH_JOB_INSTANCE, BATCH_JOB_EXECUTION, BATCH_JOB_PARAMS, - BATCH_STEP_EXECUTION, BATCH_STEP_EXECUTION_CONTEXT, respectively. The + BATCH_STEP_EXECUTION, BATCH_EXECUTION_CONTEXT, respectively. The JobRepository is responsible for saving and storing each Java object into it's correct table. The following appendix describes the meta-data tables in detail, along with many of the design decisions @@ -19,18 +19,29 @@ statements below, it is important to realize that the data types used are as generic as possible. Spring Batch provides many schemas as examples, which all have varying data types due to variations in individual database - vendors' handling of data types. Below is an ERD model of all 5 tables and + vendors' handling of data types. + + We provide schema creation scripts and also scripts for upgrading from a Spring Batch 1.0 schema. + These scripts are provided for recent versions of DB2, Derby, HSQL, MySQL, MS SQLServer, Oracle, + PostgreSQL and Sybase ASE. They are located in the sources/spring-batch-core/src/main/resources directory + of the download. + + Below is an ERD model of all 5 tables and their relationships to one another: - - + + + - + + Meta-Data Model
@@ -62,12 +73,12 @@ requiring it, sequences were used. Each variation of the schema will contain some form of the following: - CREATE SEQUENCE BATCH_STEP_EXECUTION_SEQ; -CREATE SEQUENCE BATCH_JOB_EXECUTION_SEQ; -CREATE SEQUENCE BATCH_JOB_SEQ; + CREATE SEQUENCE BATCH_STEP_EXECUTION_SEQ MAXVALUE 9223372036854775807 NOCYCLE; +CREATE SEQUENCE BATCH_JOB_EXECUTION_SEQ MAXVALUE 9223372036854775807 NOCYCLE; +CREATE SEQUENCE BATCH_JOB_SEQ MAXVALUE 9223372036854775807 NOCYCLE; Many database vendors don't support sequences. In these cases, - work arounds are used, such as the following for mySQL: + work arounds are used, such as the following for MySQL: CREATE TABLE BATCH_STEP_EXECUTION_SEQ (ID BIGINT NOT NULL) type=MYISAM; INSERT INTO BATCH_STEP_EXECUTION_SEQ values(0); @@ -378,7 +389,7 @@ INSERT INTO BATCH_JOB_SEQ values(0);
BATCH_EXECUTION_CONTEXT - The BATCH_STEP_EXECUTION_CONTEXT table holds all information + The BATCH_EXECUTION_CONTEXT table holds all information relevant to an ExecutionContext. There is exactly one ExecutionContext per StepExecution, and it contains all user defined @@ -388,14 +399,14 @@ INSERT INTO BATCH_JOB_SEQ values(0); with the BATCH_JOB_PARAMS table, this table has been denormalized and uses a column to determine the type: - CREATE TABLE BATCH_STEP_EXECUTION_CONTEXT ( + CREATE TABLE BATCH_EXECUTION_CONTEXT ( EXECUTION_ID BIGINT NOT NULL , DISCRIMINATOR VARCHAR2(1) NOT NULL, TYPE_CD VARCHAR(6) NOT NULL , KEY_NAME VARCHAR(1000) NOT NULL , STRING_VAL VARCHAR(1000) , DATE_VAL TIMESTAMP DEFAULT NULL , - LONG_VAL VARCHAR(10) , + LONG_VAL BIGINT , DOUBLE_VAL DOUBLE PRECISION , OBJECT_VAL BLOB, ) ; diff --git a/docs/src/site/resources/reference/images/meta-data-schema.png b/docs/src/site/resources/reference/images/meta-data-schema.png new file mode 100644 index 0000000000000000000000000000000000000000..c6d1ca7cad41e0cea7f565d18f8580fe5bfca484 GIT binary patch literal 41889 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