Blogs

Facebook authentication with Perl - problem and resolution

Recently I've been required to look at writing a Facebook application. I don't use Facebook and have little interest in it myself. I looked around for a quick start with Perl and Facebook and came across Facebook Authentication with Perl and Facebook::Graph which looked interesting to follow and work through.

Putting aside the problems I had getting something set up on our system that allowed Facebook to post back to us I was left with the error:

Version 2 electricty meter power logging

I've had a little time to work on my electricity meter logger (See New data shield) over the bank holiday and have made some improvements to both the script and the power usage. The new schematic is:

New electricty meter schematic

New 1.29 full release of DBD::ODBC

Changes in DBD::ODBC 1.29 March 8, 2011

An official release of the 1.28 development releases.

[NOTE]

  • The 1.28 development releases made a change which causes a generic error to be reported when an ODBC call fails but an error message is not retrieved from the ODBC Driver. It appears this has caught out a few ODBC drivers - notably freeTDS and Firebird. You now may see errors that were missed before e.g., DBIx::Class's tests for Firebird now errors test 21 "outer txn rolled back" (and others) because SQLRowCount returns an error after "ROLLBACK TO SAVEPOINT savepoint_0"; before this error was missed.

Imminent release of DBD::ODBC 1.29

I'm about to release DBD::ODBC 1.29 after 4 development releases. Unfortunately, (as is often the case) I've found a bug just after the last development release related to batching of SQL statements and odbc_more_results. I'm fairly confident in it but if you use DBD::ODBC I'd love you to test it before I release it as it may be a while before I can release a new version.

You can find it here

Support for DBD::ODBC in DBIx::ProcedureCall

I came across someone asking about DBIx::ProcedureCall today on Perl Monks in Execute Oracle Stored procedure using DBIx::ProcedureCall. Years ago I remember finding DBIx::ProcedureCall when we were about to embark on writing an application that used stored procedures in DB2, Oracle and MySQL. DBIx::ProcedureCall did not support DB2 and MySQL then and I was not that happy about the way it creates symbols in Perl for database procedures/functions so I dismissed it and I wrote my own code. When I saw it again on Perl Monks I thought I'd take another look at it and was surprised the supported DBDs has not increased (it is still Oracle and Postgres).

DBD::Oracle and collections and a surprising speed up with InstantClient 11.2

Recently at $work I've been battling with some Perl code which retrieves data from Oracle via DBD::Oracle and a package function which returns a reference cursor. As I've mentioned before in this blog, the user has no select privilege on the database but can call package procedures/functions which return reference cursors and hence data from the database.

The query we have a problem with attempts to return multiple rows but one column is actually a list of primary keys from another table:

Beware execute_array with DBI/DBD::Oracle

I've been using DBD::Oracle for a fairly major application here for some time. Most of the code is actually in Oracle procedures but some remaining code is in Perl. Since we upgraded to Oracle 11Gr2 DBD::Oracle's 26exex_array.t test has always failed. I've not been too bothered about this since we don't use the execute_array method (implemented in DBI for most drivers but implemented in DBD::Oracle directly). However, testing has unearthed some worrying results.

New data shield

My mum and dad bought me an Arduino Data Shield for Christmas (from Proto-Pic) but due to the weather and the fact if was sourced from America it did not arrive until after Christmas (over 3 weeks actually). I was initially surprised at the size of the package when it finally arrived and then discovered it was a kit of parts and not an assembled item (not a problem but I didn't spot this on the web site where it was bought from although looking at it again it does make this clear):

DBD::ODBC 1.27 release

I've just released DBD::ODBC 1.27. Version 1.27 combines all the 1.26 development releases and is a significant release as DBD::ODBC is now entirely ODBC 3.0 and requires an ODBC Driver Manager for any ODBC 2.0 drivers. Many thanks to everyone who has contributed. The changes are listed below. =head2 Changes in DBD::ODBC 1.27 December 29, 2010 Official release of the 1.26 development releases. =head2 Changes in DBD::ODBC 1.26_4 December 14, 2010
Syndicate content