Author: timbo
Date: Mon Jun  8 02:39:14 2009
New Revision: 12815

Added:
   dbi/trunk/TODO_gofer.txt
Modified:
   dbi/trunk/Changes
   dbi/trunk/MANIFEST
   dbi/trunk/TASKS.pod

Log:
Move general to-do's out of Changes into TASKS.pod
Moved gofer specific to-do's into TODO_gofer.txt


Modified: dbi/trunk/Changes
==============================================================================
--- dbi/trunk/Changes   (original)
+++ dbi/trunk/Changes   Mon Jun  8 02:39:14 2009
@@ -6,55 +6,7 @@
 
 =cut
 
-Assorted TODO notes:
-
-General:
-    Protect trace_msg from SIGPIPE?
-    prepare(...,{ Err=>\my $isolated_err, ...})
-    Add trace modules that just records the last N trace messages into an array
-    and prepends them to any error message.
-    Document DBI_PROFILE_FLOCK and LockFile attrib in DBI::ProfileData and 
DBI::ProfileDumper
-Performance:
-    Move _new_sth to DBI::db::_new_sth (leave alias) and implement in C
-        Or call _new_child and move to DBI::common?
-    Implement FETCH_many() in C
-
-Gofer TODOs:
-
-Add server-side caching.
-    combine these:
-        my $request = $transport->thaw_request( $frozen_request, $serializer );
-        my $response = $executor->execute_request( $request );
-        my $frozen_response = $transport->freeze_response($response, 
$serializer);
-    into single method that first checks the cache and updates it if 
appropriate.
-    Different serializations will have different caches
-
-Add DBI::Gofer::Serialiser::MIME / Base64
-Add DBI::Gofer::Serialiser::JSON
-
-Gofer - allow dbh attrib changes after connect?
-    note them and pass in request as STORE method calls
-    but then gofer server need to reset them to restore dbh to original state
-    Or, change the attr in the connect() call, but that risks
-    bloating the number of cache dbh in the server.
-Gofer request flags for:
-    - return current executor stats as an attribute - handy for tests
-    - will accept streamed resultsets
-Add attr-passthru to prepare()? ie for gofer cache control & ReadOnly
-Define and document terminology for client and server ends
-Document user/passwd issues at the various levels of the gofer stack
-    Remove "Password" from connect attr if the same as $password arg
-Extract policy settings by parsing the pod
-Policy for dbh attr FETCH (ie example_driver_path)
-    or piggyback on skip_connect_check
-    could also remember which attr have been returned to us
-    so not bother FETCHing them (unless pedantic)
-Call method on transport failure so transport can cleanup/reset if it wants
-Gofer: gearman - need to disable coallesing for non-idempotent requests
-
-Add high-res time for windows - via Time::HiRes glob replace dbi_time().
-
-=head2 Changes in DBI 1.609 (svn r12811) 5th June 2009
+=head2 Changes in DBI 1.609 (svn r12814) 8th June 2009
 
   Fixes to DBD::File (H.Merijn Brand)
     added f_schema attribute
@@ -64,7 +16,7 @@
 
   Added DBI->visit_handles($coderef) method.
   Added $h->visit_child_handles($coderef) method.
-  Added docs form column_info()'s COLUMN_DEF value.
+  Added docs for column_info()'s COLUMN_DEF value.
   Clarified docs on stickyness of data type via bind_param().
   Clarified docs on stickyness of data type via bind_col().
 

Modified: dbi/trunk/MANIFEST
==============================================================================
--- dbi/trunk/MANIFEST  (original)
+++ dbi/trunk/MANIFEST  Mon Jun  8 02:39:14 2009
@@ -11,6 +11,7 @@
 Roadmap.pod                    Planned changes and enhancements for the DBI
 TASKS.pod                       Want to help? These things need doing...
 TODO_2005.txt                  Old (but still mostly relevant) occasional 
random notes about what's missing
+TODO_gofer.txt                  To-do notes related to gofer
 dbd_xsh.h                      Prototypes for standard Driver.xst interface
 dbi_sql.h                      Definitions based on SQL CLI / ODBC (#inc'd by 
DBIXS.h)
 dbipport.h                     Perl portability macros (from Devel::PPort)

Modified: dbi/trunk/TASKS.pod
==============================================================================
--- dbi/trunk/TASKS.pod (original)
+++ dbi/trunk/TASKS.pod Mon Jun  8 02:39:14 2009
@@ -33,4 +33,23 @@
 Naturally I'll offer direction and guidance on any you want to tackle.
 I've also got a few that could be entered into rt.cpan.org.
 
+=head2 Others
+
+General:
+
+    Protect trace_msg from SIGPIPE?
+    prepare(...,{ Err=>\my $isolated_err, ...})
+    Add trace module that just records the last N trace messages into an array
+        and prepends them to any error message to provide context for the 
error.
+    Document DBI_PROFILE_FLOCK and LockFile attrib in DBI::ProfileData and 
DBI::ProfileDumper
+
+Performance:
+
+    Move _new_sth to DBI::db::_new_sth (leave alias) and implement in C
+        Or call _new_child and move to DBI::common?
+
+    Implement FETCH_many() in C
+
+    Add high-res dbi_time for windows - via Time::HiRes glob replace 
dbi_time()?
+
 =cut

Added: dbi/trunk/TODO_gofer.txt
==============================================================================
--- (empty file)
+++ dbi/trunk/TODO_gofer.txt    Mon Jun  8 02:39:14 2009
@@ -0,0 +1,56 @@
+Gofer TODOs:
+
+DBD::Gofer and http transport changes
+add comparisons with other proxies to gofer docs (see notes)
+    http://code.google.com/p/mod-ndb/
+    http://code.nytimes.com/projects/dbslayer
+update gofer pdf in distribution
+talk about multiple statements in single sql for gofer
+inbalance between two calls to _store_response_in_cache
+    - the call in transmit_request doesn't have the response_needs_retransmit 
logic
+
+Add server-side caching.
+    combine these:
+        my $request = $transport->thaw_request( $frozen_request, $serializer );
+        my $response = $executor->execute_request( $request );
+        my $frozen_response = $transport->freeze_response($response, 
$serializer);
+    into single method that first checks the cache and updates it if 
appropriate.
+    Different serializations will have different caches
+
+Add DBI::Gofer::Serialiser::MIME / Base64
+Add DBI::Gofer::Serialiser::JSON
+
+Gofer - allow dbh attrib changes after connect?
+    note them and pass in request as STORE method calls
+    but then gofer server need to reset them to restore dbh to original state
+    Or, change the attr in the connect() call, but that risks
+    bloating the number of cache dbh in the server.
+Gofer request flags for:
+    - return current executor stats as an attribute - handy for tests
+    - will accept streamed resultsets
+Add attr-passthru to prepare()? ie for gofer cache control & ReadOnly
+Define and document termind that first checks the cache and updates it if 
appropriate.
+    Different serializations will have different caches
+
+Add DBI::Gofer::Serialiser::MIME / Base64
+Add DBI::Gofer::Serialiser::JSON
+
+Gofer - allow dbh attrib changes after connect?
+    note them and pass in request as STORE method calls
+    but then gofer server need to reset them to restore dbh to original state
+    Or, change the attr in the connect() call, but that risks
+    bloating the number of cache dbh in the server.
+Gofer request flags for: 
+    - return current executor stats as an attribute - handy for tests
+    - will accept streamed resultsets
+Add attr-passthru to prepare()? ie for gofer cache control & ReadOnly
+Define and document terminology for client and server ends
+Document user/passwd issues at the various levels of the gofer stack
+    Remove "Password" from connect attr if the same as $password arg
+Extract policy settings by parsing the pod
+Policy for dbh attr FETCH (ie example_driver_path)
+    or piggyback on skip_connect_check
+    could also remember which attr have been returned to us
+    so not bother FETCHing them (unless pedantic)
+Call method on transport failure so transport can cleanup/reset if it wants
+Gofer: gearman - need to disable coallesing for non-idempotent requests

Reply via email to