Difference between revisions of "PostgreSQL Adapter"
(6 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
+ | {{Admon/obsolete}} | ||
+ | |||
<big><big> PostgreSQL Adapter for NexJ </big></big> | <big><big> PostgreSQL Adapter for NexJ </big></big> | ||
{{NexJ_Express Index}} | {{NexJ_Express Index}} | ||
− | [[category: NexJ | + | [[category: NexJ Past Projects]] |
[[category: NexJ Express PostgreSQL]] | [[category: NexJ Express PostgreSQL]] | ||
== Project Goal== | == Project Goal== | ||
− | Develop an adapter to enable NexJ Express model to interact with PostgreSQL database | + | Develop an adapter to enable NexJ Express model to interact with PostgreSQL database. |
===Contributors=== | ===Contributors=== | ||
Line 15: | Line 17: | ||
=== Supported PostgreSQL Versions=== | === Supported PostgreSQL Versions=== | ||
− | * 8.4 | + | * 8.4+ |
− | |||
== Current Status== | == Current Status== | ||
− | * | + | * '''Completed''' (October 21, 2011) |
+ | * Get the last PostgreSQL adapter source code from http://mercurial.nexj.com/express.cgi/core | ||
<!--{|class="collapsible collapsed" style="border-style:solid;border-width:thin;border-color:black" | <!--{|class="collapsible collapsed" style="border-style:solid;border-width:thin;border-color:black" | ||
Line 46: | Line 48: | ||
|} | |} | ||
--> | --> | ||
− | |||
==Project Phases== | ==Project Phases== | ||
Line 121: | Line 122: | ||
* https://bitbucket.org/gbatumbya/postgresql_external/src/6c9a7380c8fe | * https://bitbucket.org/gbatumbya/postgresql_external/src/6c9a7380c8fe | ||
− | === Phase 16: Code Review 4 - Apply Changes === | + | === Phase 16: Code Review 4 - Apply Changes (DONE) === |
* Estimated Duration: Sep 9 - Sep 12 | * Estimated Duration: Sep 9 - Sep 12 | ||
* [[PostgreSQL_Adapter_Project_-_Code_Review_4_Changes | Changes to be made]] | * [[PostgreSQL_Adapter_Project_-_Code_Review_4_Changes | Changes to be made]] | ||
− | === Phase 17: Code Review 5 === | + | === Phase 17: Code Review 5 (DONE) === |
* Submitted code for review on Sep 20. | * Submitted code for review on Sep 20. | ||
* https://bitbucket.org/gbatumbya/postgresql_external/src/a0d10ef7cdbe/ | * https://bitbucket.org/gbatumbya/postgresql_external/src/a0d10ef7cdbe/ | ||
+ | |||
+ | === Phase 18: Code Review 5 - Apply Changes (DONE) === | ||
+ | |||
+ | === Phase 19: Code Review 6 === | ||
+ | * Date: Oct 13 | ||
+ | * Submitted for code review | ||
+ | * https://bitbucket.org/gbatumbya/postgresql_external/src/153aec847d54/ | ||
+ | |||
== Project Repository == | == Project Repository == | ||
− | * URL for central repository of the project is: https://bitbucket.org/gbatumbya/ | + | * URL for central repository of the project is: https://bitbucket.org/gbatumbya/nexjexpress-postgresqladapter |
* Steps to work with the repository | * Steps to work with the repository | ||
Line 140: | Line 149: | ||
::click on '''File -> Import -> Mercurial -> Clone Existing Mercurial Repository''' | ::click on '''File -> Import -> Mercurial -> Clone Existing Mercurial Repository''' | ||
:: Enter this information: | :: Enter this information: | ||
− | ::: '''URL''': https://bitbucket.org/gbatumbya/ | + | ::: '''URL''': https://bitbucket.org/gbatumbya/nexjexpress-postgresqladapter |
<!-- | <!-- | ||
:3- The central repository's structure is: | :3- The central repository's structure is: | ||
Line 158: | Line 167: | ||
* '''NOTE!''' First just 'Commit' changesets and do not 'Push' them until the end of the day or the time you are confident by latest changes to the code, then 'Push' them all at once and 'Merge' them with the 'default' branch in central repository. | * '''NOTE!''' First just 'Commit' changesets and do not 'Push' them until the end of the day or the time you are confident by latest changes to the code, then 'Push' them all at once and 'Merge' them with the 'default' branch in central repository. | ||
--> | --> | ||
− | |||
== Resources == | == Resources == |
Latest revision as of 19:31, 26 January 2014
PostgreSQL Adapter for NexJ
Contents
- 1 Project Goal
- 2 Current Status
- 3 Project Phases
- 3.1 Phase 1: Investigation (DONE)
- 3.2 Phase 2: Connect to PostgreSQL server (DONE)
- 3.3 Phase 3: PostgreSQLSchemaManager (DONE)
- 3.4 Phase 4: PostgreSQLAdapter (DONE)
- 3.5 Phase 5: PostgreSQL UnitTests and Optimization (DONE)
- 3.6 Phase 6: Megre Code with Latest Revision (DONE)
- 3.7 Phase 7: Test with NexJ Express Studio (DONE)
- 3.8 Phase 8: Code Review 1 - Meeting (DONE)
- 3.9 Phase 9: Code Review 1 - Apply Changes (DONE)
- 3.10 Phase 10: Code Review 2 (DONE)
- 3.11 Phase 11: Code Review 2 - Apply Changes (DONE)
- 3.12 Phase 12: Code Review 3 (DONE)
- 3.13 Phase 13: Code Review 3 - Apply Changes (DONE)
- 3.14 Phase 14: Integration Tests (DONE)
- 3.15 Phase 15: Code Review 4 (DONE)
- 3.16 Phase 16: Code Review 4 - Apply Changes (DONE)
- 3.17 Phase 17: Code Review 5 (DONE)
- 3.18 Phase 18: Code Review 5 - Apply Changes (DONE)
- 3.19 Phase 19: Code Review 6
- 4 Project Repository
- 5 Resources
- 6 Summary of Applied Research
Project Goal
Develop an adapter to enable NexJ Express model to interact with PostgreSQL database.
Contributors
Supported PostgreSQL Versions
- 8.4+
Current Status
- Completed (October 21, 2011)
- Get the last PostgreSQL adapter source code from http://mercurial.nexj.com/express.cgi/core
Project Phases
Phase 1: Investigation (DONE)
- Get requirements from NexJ (Meeting on Friday Nov 5th)
- Walk-through the code
- Familiarization with PostgreSQL
Phase 2: Connect to PostgreSQL server (DONE)
Phase 3: PostgreSQLSchemaManager (DONE)
- Estimated Duration: 3 weeks (Jan 17 - Feb 11, 2011)
- Extending SQLSchemaManager
Phase 4: PostgreSQLAdapter (DONE)
- Estimated Duration: 3 weeks (Feb 14 - 25, 2011)
- Extending SQLAdapter
Phase 5: PostgreSQL UnitTests and Optimization (DONE)
- Estimated Duration: 2 weeks (Feb 28 - Mar 11, 2016)
- Add database specific tests fostr PostgreSQL
- test for required contrib scripts
- test for custom blob read & write functions
- Add PostgreSQL specific optimization
Phase 6: Megre Code with Latest Revision (DONE)
- Merge code with lastest revision from http://mercurial.nexj.com/express
Phase 7: Test with NexJ Express Studio (DONE)
- Estimated duration: Mar 7- Apr 14, 2011
- Run model in Express studio using the postgresql adapter
- create scripts for database initialization, creation and dumping
- create scripts for JBoss
- Deploy to JBoss
Phase 8: Code Review 1 - Meeting (DONE)
- Date: Apr 20,2011
- Meet with NexJ Developer to review code
Phase 9: Code Review 1 - Apply Changes (DONE)
- Estimated Duration: Apr 20, 2011 - July 1, 2011
- Changes to be made
Phase 10: Code Review 2 (DONE)
- Send code for review
Phase 11: Code Review 2 - Apply Changes (DONE)
- Estimated Duration: July 7, 2011 - July 15, 2011
- Changes to be made
Phase 12: Code Review 3 (DONE)
- Sent code for code review 3
- https://bitbucket.org/gbatumbya/postgresql_external/src/08cdedb9d071/
Phase 13: Code Review 3 - Apply Changes (DONE)
- Upgrade to lastest 7.1 branch
- Create Statement and PreparedStatementProxy
- Create PostgreSQLPreparedStatementProxy:
- implement set/getQueryTimeout
- move custom timeout code into this proxy
- Override prepareStatement in PostgreSQL to return PostgreSQLPreparedStatementProxy
- Implement implicit save points for statements within a transaction block
- Modify readSchema to use addColumn for reading columns from the database
- Remove MSSQL and Oracle specific code from addColumn
- Override addColumn in PostgreSQL for text, bytea and lo types
Phase 14: Integration Tests (DONE)
- Run Integration tests against the Adapter
Phase 15: Code Review 4 (DONE)
- Code review with framework architect
- https://bitbucket.org/gbatumbya/postgresql_external/src/6c9a7380c8fe
Phase 16: Code Review 4 - Apply Changes (DONE)
- Estimated Duration: Sep 9 - Sep 12
- Changes to be made
Phase 17: Code Review 5 (DONE)
- Submitted code for review on Sep 20.
- https://bitbucket.org/gbatumbya/postgresql_external/src/a0d10ef7cdbe/
Phase 18: Code Review 5 - Apply Changes (DONE)
Phase 19: Code Review 6
- Date: Oct 13
- Submitted for code review
- https://bitbucket.org/gbatumbya/postgresql_external/src/153aec847d54/
Project Repository
- URL for central repository of the project is: https://bitbucket.org/gbatumbya/nexjexpress-postgresqladapter
- Steps to work with the repository
- 1- Follow the instructions to create the NexJ Express workspace .
- 2- After creating 'ws' directory,
- open Eclipse and
- click on File -> Import -> Mercurial -> Clone Existing Mercurial Repository
- Enter this information:
Resources
- Downloads
Linux binaries http://www.openscg.org/se/postgresql/packages.jsp
- Debugging
- Intro
- Concept of Adapter [1]
- FOSSLC PostgreSQL
- Java
- Database & Persistence
- JDBC
- PostgreSQL Specifications
- MySQL Specifications
- Postgre - MySQL Compare