<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>Advogato blog for camber</title>
    <link>http://www.advogato.org/person/camber/</link>
    <description>Advogato blog for camber</description>
    <language>en-us</language>
    <generator>mod_virgule</generator>
    <pubDate>Sat, 25 May 2013 16:36:20 GMT</pubDate>
    <item>
      <pubDate>Sun, 17 Mar 2002 04:43:55 GMT</pubDate>
      <title>17 Mar 2002</title>
      <link>http://www.advogato.org/person/camber/diary.html?start=6</link>
      <guid>http://www.advogato.org/person/camber/diary.html?start=6</guid>
      <description>This months Linux Journal has an article on using &lt;a
href="http://www.freetds.org"&gt;FreeTDS&lt;/a&gt; with Perl.  Didn't
even know it was coming until I saw it.  Pretty cool.

&lt;p&gt; In other news, I've almost got Access 2000 support working
in MDB Tools, and OpenDRDA is making slow steady progress
with the beginnings of a ODBC driver.

&lt;p&gt; Someday I'll get back to working on my TDS dissector for
ethereal, but that's been tabled for the moment.

</description>
    </item>
    <item>
      <pubDate>Mon, 2 Jul 2001 03:25:36 GMT</pubDate>
      <title>2 Jul 2001</title>
      <link>http://www.advogato.org/person/camber/diary.html?start=5</link>
      <guid>http://www.advogato.org/person/camber/diary.html?start=5</guid>
      <description>Started working on a new project, for now called "libdrda". 
I'll come up with a snazzier name later.  

&lt;p&gt; The basic premise is this:  IBM a couple of years ago
submitted DRDA (Distributed Relational Database
Architecture) to the Open Group standards process. 
Basically, what it is is a protocol similar in purpose to
TDS, SQL/Net, etc... that allows database clients to talk to
database servers.  But DRDA goes a little further and
defines the ability to coordinate transactions across
heterogeneous servers which support DRDA natively or via a
gateway.

&lt;p&gt; DRDA comes from the mainframe world and uses all kinds of
mainframe terms in the documentation...really confusing for
a unix guy.  However, I've managed to plow through the
documentation and get my program exchanging supported
attributes with a IBM DB2 7.2 server (DB2 UDB supports DRDA
natively in addition to its private protocol).

&lt;p&gt; So, now I have (or will have) something analogous to FreeTDS
for IBM DB2.  I'll add an ODBC layer on top of it, so it
works with Perl, PHP, etc... The next step is to create a
DRDA gateway for FreeTDS so that a DRDA client can talk to
Sybase or Microsoft SQL Server.

&lt;p&gt; But the real payoff comes from embedding DRDA support in all
the open source databases, Postgresql, MySQL, mSQL,
Interbase, etc....

&lt;p&gt; Imagine that you could use a single database client to talk
to *any* database regardless of vendor.  Standards are
wonderful things aren't they?

&lt;p&gt; Released tarballs for FreeTDS 0.52 tonight too.</description>
    </item>
    <item>
      <pubDate>Sun, 22 Apr 2001 01:38:52 GMT</pubDate>
      <title>22 Apr 2001</title>
      <link>http://www.advogato.org/person/camber/diary.html?start=4</link>
      <guid>http://www.advogato.org/person/camber/diary.html?start=4</guid>
      <description>Been doing alot of work on MDB Tools lately.   I actually
have a SQL engine up and running!  This is my first big
lex/yacc project, and I'm quite pleased with how easy they
make life once you learn them.  A few problems here and
there but nothing big.
&lt;p&gt;
Anyway, finally figured out how Access stores its indexes.
Not pretty at all!
&lt;p&gt;
On other fronts the dying corpse of Northpoint has left me
cursed to dialup.  My ISP tried to re-apportion the line to
another DSL carrier but no one else comes out this
far...argh.  So, next saturday I get a cable modem.  I hate
the cable company with a vengence.  They're charging me $10
more a month because I dropped their sorry cable service two
years ago and got a dish.
</description>
    </item>
    <item>
      <pubDate>Sat, 25 Nov 2000 02:43:01 GMT</pubDate>
      <title>25 Nov 2000</title>
      <link>http://www.advogato.org/person/camber/diary.html?start=3</link>
      <guid>http://www.advogato.org/person/camber/diary.html?start=3</guid>
      <description>Finally strung CAT5 to the basement and bought one of those
linksys DSL routers (Yeah I know I could do it with a spare
linux box, but I didn't really want a box on upstairs 24x7,
and her office where the DSL line comes in is crowded
already).  The linksys is working pretty nicely.   

&lt;p&gt; I'm getting about 620kbps transfer rate off the supposedly
784k DSL line, but by the time you factor in IP overhead
it's probably about right.

&lt;p&gt; Released FreeTDS 0.51 this week.  So far so good.  Need to
automagically find the 16 and 32 bit types for the platform
it's built on.  inttypes.h provides them on many platforms,
but not all and  where they are defined seems  to vary a
bit.  glib using some sizeof macros to do it, so I'm
probably going to follow that unless anyone has a better
idea.

&lt;p&gt; Also been working on a TDS based connection pool program. 
It works like this.  Let's say you have a 10 CAL license for
MS SQL Server and want to use Apache/PHP to pull data from
the server.  Now most likely you'll have many apache
children (in a heavy traffic site anyway), more than the
number of CALs you have.  And more often than not they will
not be querying the database at any particular time.  So
what to do? buck up for a 50 CAL license? pricey.

&lt;p&gt; The TDS Connection Pool sits between the Database and the
PHP (or whaterver) clients.  It acts like a  MS SQL Server,
a client logs in and gets a forged login acknowledgement and
thinks it connected.  Meanwhile the pool maintains a group
of logins to the real dataserver and when a client sends a
query, it allocates a connection, forwards the query,
forwards the response back to the client and then returns
the connection to the pool.  This has the additional
advantage that the client-to-pool connection is very quick
compared to the long connect time to the real dataserver, so
you get the advantage of persistant connections without the
disadvantages of having one connection per Apache child like
PHP.

</description>
    </item>
    <item>
      <pubDate>Wed, 18 Oct 2000 01:55:22 GMT</pubDate>
      <title>18 Oct 2000</title>
      <link>http://www.advogato.org/person/camber/diary.html?start=2</link>
      <guid>http://www.advogato.org/person/camber/diary.html?start=2</guid>
      <description>Working on &lt;a href="http://www.freetds.org" &gt;FreeTDS&lt;/a&gt;
bugs...Microsoft decided under SQL Server 7 to change the
default packet size which has caused all kinds of havoc with
large querys.  I'm glad to finally have a handle on why
though.
&lt;p&gt;
Been comtemplating how best to debug with a complex system
like apache+PHP+FreeTDS+SQL Server,  Problem is when you
have 30 httpd children running around and you have an
intermittant bug it's damn near impossible to catch it. 
Best I've been able to do is generate tons of logs and hope
something gives.
&lt;p&gt;
Skipping the presidential debates tonight, think I've seen
enough in the first two.  (Go Nader!)
</description>
    </item>
    <item>
      <pubDate>Tue, 25 Apr 2000 00:05:54 GMT</pubDate>
      <title>25 Apr 2000</title>
      <link>http://www.advogato.org/person/camber/diary.html?start=1</link>
      <guid>http://www.advogato.org/person/camber/diary.html?start=1</guid>
      <description>Generally hard to work on much for the past few weeks.  I am
buying a house, and if that's not bad enough the particular
house we are trying to buy is in bankruptcy.  I've never
dealt with so much paper work in my life!!! argh!  Anyway,
this has really taken its toll on my hacking time.

&lt;p&gt; I've been trying to get the stubs in place for QtK so I can
get SybSQL to compile.  It's pretty slow going though.

&lt;p&gt; On other fronts, Comdex was pretty cool.  It really struck
me when I walked in and saw Linux everywhere.  No blank
stares with I asked for linux support from SAN vendors and
such (looking at SANs for my day job).  Any lingering doubt
in my mind about Linux being mainstream have been dispelled.

&lt;p&gt; Veritas had the coolest hand outs, all their people were
dressed in doctors scrubs (something to do with data
recovery I guess :-)  Anyway, they had prescription bottles
filled with jelly beans.

&lt;p&gt; Redhat and VA were noticably absent.  Corel had a big booth,
and if I didn't know better I'd have sworn they were
demo'ing Windows software!  Not sure how good a thing that
is.

&lt;p&gt; I had a theory about the correlation of a company's
financial situation and how scantily dressed their sales
women were.  Pick systems has apparently seen better days.
</description>
    </item>
    <item>
      <pubDate>Mon, 10 Apr 2000 02:28:25 GMT</pubDate>
      <title>10 Apr 2000</title>
      <link>http://www.advogato.org/person/camber/diary.html?start=0</link>
      <guid>http://www.advogato.org/person/camber/diary.html?start=0</guid>
      <description>Looking through the freshmeat entries to put them on here, I
just realized that I've started a new project every January
for the last three years.  Ah, January when the sun goes
down at 5pm and the only thing to do is hack.  No wonder the
scandenavians are all such awesome hackers!
&lt;p&gt;
Anyway, been working on QtK again after a long hiatus.  QtK
is a really foolish attempt of mine to run programs written
for Qt on gtk+ instead.  It's coming along pretty well
though.  I've chosen SybSQL (a graphical Sybase interface
written with Qt and dblib) as a porting target and have it
almost compiling.  Next comes the hard part!
&lt;p&gt;
Merged in some more contributed patches for &lt;a
href="http://mdbtools.sourceforge.net"&gt;mdbtools&lt;/a&gt;.  Carl
got some foreign key stuff working on the schema export side
of things. 
&lt;p&gt;
I'm doing a little talk at my LUG meeting this month on
&lt;a href="http://www.freetds.org" &gt;FreeTDS&lt;/a&gt; and MDB Tools,
and I still don't have any material
ready! 
</description>
    </item>
  </channel>
</rss>
