Forums | Admin

Discussion Forums: open-discussion

Start New Thread Start New Thread
Message: 34712
BY: Kubo Takehiro (kubo)
DATE: 2007-12-02 15:10
SUBJECT: RE: Want to contribute

 

Thanks for you proposal.

Here is my plan for ruby-oci8 2.0.

(1) Oracle Objects (Named datatypes)

1-a. accessing attributes (2007)
1-b. calling class/member functions/procedures (2008 Q1 ~ Q2)
1-c. REF support (2008 Q3 ~ Q4)

(2) Array DML (Native array support) (2008)

OCI has a feature executing more than one DML at once.
It reduces network round trips and improve performance.
http://download-uk.oracle.com/docs/cd/B14117_01/appdev.101/b10779/oci05bnd.htm#423632

I have not decided how to use it. There are two ways.

a. set batch value. Array DML is done internally.
http://download-uk.oracle.com/docs/cd/B10501_01/java.920/a96654/oraperf.htm

b. add new bind and execute functions.
http://search.cpan.org/~timb/DBI/DBI.pm#bind_param_array

I thought the former was elegant and proper. But it may be hard to
explain what it actually do. When a user inserts many values into two
associate tables, he may have to call sendBatch() at right time to
avoid foreign key constraint errors. It is required to him to
understand when pending execution data are sent.

The latter is not elegant but simple, and moreover usable enough.
My thought is moving to the latter gradually.

(3) XML DB support (?)

I had added a feature getting XML data as REXML objects. But it has
been disabled after Oracle object support was rewritten.
As far as I tried before, I cannot get exactly same XMLs with inserted
ones. Blanks had not been reserved...

(4) improved non-blocking mode (ruby 1.9 feature) (2007)

When non-blocking is true, ruby-oci8 1.0 uses polling to check
whether a blocking OCI call has finished. ruby-oci8 2.0 uses
rb_thread_blocking_region() if it is compiled for ruby 1.9.

ref: http://www.nabble.com/Ruby-YARV-thread-question-t3187446.html

I'm now working for (1) and (4).
(4) will be done for a week.
(2) and (3) are relatively independent with (1).

You are welcome to contribute to (2) or (3).


Thread View

Thread Author Date
Want to contributeLiming Lian2007-11-30 08:37
      RE: Want to contributeKubo Takehiro2007-12-02 15:10
            RE: Want to contributeLiming Lian2007-12-03 01:34

Post a followup to this message