Thread: Rekall for Free
Hi This is my first post to this mailing list. I would like all list members that I am the same person who used to work for MySQL AB. Even though I worked for MySQL AB, PostgreSQL has always been my RDBMS of choice. The reason for telling you all about about my involvement with MySQL is because I do not want anybody to think that I have joined this mailing list to be disruptive or the sing the praises of MySQL. On the contrary, I have joined this list to help users get the best out of PG and to answer questions relating to PG/Rekall issues. The first point I would like to raise, relates to something I came across in the archive, with the subject line "free WINDOWS rekall". Shortly, before Chris Green posted his reply to the original post made by Typing80wpm@aol.com, Mike Richardson( Rekall GPL at www.rekallrevealed.org ) and myself ( Rekall commercial binary distros at www.totalrekall.co.uk ) made the decision to give away old versions of Rekall. All Rekall V2.1.1 releases are now available for free download. The only stipulation is that users register with the TotalRekall web site. The reason I ask this is because occasionally I will send a bulk email notifying everybody of new releases ( free, GPL and commercial ) . I do this may be 3 or 4 times per year. The second point I would like to raise, concerns our relationship with theKompany.com (TKC). The simple answer to this point is that we have no relationship with TKC. At the time of the parting of the ways we made an announcement to the affect that we would offer Rekall users, who had bought Rekall from TKC, the opportunity to switch over to us for free. This offer was limited to 12 months, which has since expired. We said at the time that we would not provide support or maintenance to TKC customers unless they switched over to us. TKC still continue to sell Rekall V2.1.x, which we offer as a free download, and since Shawn Gordon has very limited technically ability, he will not be able to provide much in the way of technical support. He certainly will not be able to provide maintenance releases, or new releases. TKC is selling an old out of date release for $69, whereas we sell Rekall for £25 ( approx $45 ). We are thinking about offering 3 editions - Standard, Professional and Enterprise. I will say more about that once we have decided how best to do this and how we much we are going to charge. What I can say is that we are working on some pretty cool enhancements to Rekall, which will allow us to split the basic package into 3 separate editions. The one enhancement which excite us most (at the moment) is Rekall/WEB. If you want to know more about Rekall/WEB take a look at the FAQs on http://www.totalrekall.co.uk. One thing we have been thinking about for a long time is offering ready to use Rekall applications, which we will sell at a fraction of the price of similar types of applications. In addition, providing there is sufficient interest we would like to produce a totally PG oriented version of Rekall. If we did that we could include all the administrative feature of PG and lots more --- Regards John Dean, co-author of Rekall, the only alternative to MS Access
I'm having an unexpected behavior from an UPDATE query : I expected only updates to existing rows but it is INSERTING new rows when there isn't a PK There are no triggers,views or rules associated with the tables .... and to make things worse I have a similar query to another table where the UPDATE works as expected and if I want to make INSERTs I have to make them :) It seems the UPDATE is working like the Mysql REPLACE ... I tested in Postgresql 7.3 in Linux and Postrgresql 8.0 in Win32 the new row in table084 has the field1,field2 from the where clause in the UPDATE the default values for field3 ,field4 and the SET values from the UPDATE to field5, field6, field7 UPDATE table084 SET field5=table090.field9, field6=table090.field11, field7=date_o(now()) WHERE table084.field1=table088.field6 AND table084.field2=table090.field4 AND table088.field1='DOC_TITLE' AND table088.field2=123456 AND table088.field1=table090.field1 AND table088.field2=table090.field2; where table084 is defined as : my2005=# \d table084 Table "public.table084" Column | Type | Modifiers --------+---------------+--------------------------- field1 | integer | not null default 0 field2 | text | not null default ''::text field3 | text | not null default ''::text field4 | text | not null default ''::text field5 | numeric(16,3) | not null default 0.000 field6 | numeric(16,3) | not null default 0.000 field7 | text | not null default ''::text Indexes: "table084_pkey" PRIMARY KEY, btree (field1, field2) Am I missing something ? I can give you more details if needed. Thanks for any help ... Ruben Oliveira
Ruben Oliveira wrote: > I'm having an unexpected behavior from an UPDATE query : > I expected only updates to existing rows but it is INSERTING new rows > when there isn't a PK Hmm - doesn't sound likely. Especially if you don't supply a primary key. > There are no triggers,views or rules associated with the tables .... > and to make things worse I have a similar query to another table where > the UPDATE works as expected > and if I want to make INSERTs I have to make them :) > It seems the UPDATE is working like the Mysql REPLACE ... I tested in > Postgresql 7.3 in Linux and Postrgresql 8.0 in Win32 > the new row in table084 has the field1,field2 from the where clause in > the UPDATE > the default values for field3 ,field4 and the SET values from the UPDATE > to field5, field6, field7 > UPDATE table084 > SET field5=table090.field9, > field6=table090.field11, > field7=date_o(now()) > WHERE table084.field1=table088.field6 > AND table084.field2=table090.field4 > AND table088.field1='DOC_TITLE' > AND table088.field2=123456 > AND table088.field1=table090.field1 > AND table088.field2=table090.field2; You should really have a FROM clause in this update - I'd have thought you'd get an error with this in version 8.0 Could you show the actual problem: 1. BEGIN 2. SELECT oid,cmin,cmax,* FROM table084 WHERE <conditions returning no rows> 3. Run above query 4. SELECT oid,xmin,xmax,cmin,cmax,* FROM table084 WHERE <same conditions as above> 5. SELECT oid,xmin,xmax,cmin,cmax,* FROM table084 WHERE <row that has been updated properly> 6. ROLLBACK That way we can see that a row has really been inserted and which transaction did it. -- Richard Huxton Archonet Ltd
I can't wait!
On 5/11/05, John Dean <john@totalrekall.co.uk> wrote:
Hi
This is my first post to this mailing list. I would like all list members
that I am the same person who used to work for MySQL AB. Even though I
worked for MySQL AB, PostgreSQL has always been my RDBMS of choice. The
reason for telling you all about about my involvement with MySQL is because
I do not want anybody to think that I have joined this mailing list to be
disruptive or the sing the praises of MySQL. On the contrary, I have joined
this list to help users get the best out of PG and to answer questions
relating to PG/Rekall issues.
The first point I would like to raise, relates to something I came across
in the archive, with the subject line "free WINDOWS rekall". Shortly,
before Chris Green posted his reply to the original post made by
Typing80wpm@aol.com, Mike Richardson( Rekall GPL at www.rekallrevealed.org
) and myself ( Rekall commercial binary distros at www.totalrekall.co.uk )
made the decision to give away old versions of Rekall. All Rekall V2.1.1
releases are now available for free download. The only stipulation is that
users register with the TotalRekall web site. The reason I ask this is
because occasionally I will send a bulk email notifying everybody of new
releases ( free, GPL and commercial ) . I do this may be 3 or 4 times per year.
The second point I would like to raise, concerns our relationship with
theKompany.com (TKC). The simple answer to this point is that we have no
relationship with TKC. At the time of the parting of the ways we made an
announcement to the affect that we would offer Rekall users, who had bought
Rekall from TKC, the opportunity to switch over to us for free. This offer
was limited to 12 months, which has since expired. We said at the time that
we would not provide support or maintenance to TKC customers unless they
switched over to us. TKC still continue to sell Rekall V2.1.x, which we
offer as a free download, and since Shawn Gordon has very limited
technically ability, he will not be able to provide much in the way of
technical support. He certainly will not be able to provide maintenance
releases, or new releases. TKC is selling an old out of date release for
$69, whereas we sell Rekall for £25 ( approx $45 ). We are thinking about
offering 3 editions - Standard, Professional and Enterprise. I will say
more about that once we have decided how best to do this and how we much we
are going to charge. What I can say is that we are working on some pretty
cool enhancements to Rekall, which will allow us to split the basic package
into 3 separate editions. The one enhancement which excite us most (at the
moment) is Rekall/WEB. If you want to know more about Rekall/WEB take a
look at the FAQs on http://www.totalrekall.co.uk .
One thing we have been thinking about for a long time is offering ready to
use Rekall applications, which we will sell at a fraction of the price of
similar types of applications. In addition, providing there is sufficient
interest we would like to produce a totally PG oriented version of Rekall.
If we did that we could include all the administrative feature of PG and
lots more
---
Regards
John Dean,
co-author of Rekall,
the only alternative
to MS Access
---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
joining column's datatypes do not match
Thanks for the answer Richard and my apologies for wasting your time. After doing the first select I found that the software that uses this database was alreading doing the inserts if there wasn't any row with a PK on it ... so every UPDATE i did worked when I expected otherwise... I only noticed that when I run the first SELECT and of course there it was the row i thought didn't exist ... The UPDATE in Postgresql continues bugless :), I think my mistake was making the wrong assumption about the software code and remembering the mysql REPLACE lead me in the wrong way ... an simple select would make it clear that the aplication that uses the DB was already doing the INSERT, shame on me :( Thanks for everything :) Ruben Oliveira Richard Huxton wrote: > Ruben Oliveira wrote: > >> I'm having an unexpected behavior from an UPDATE query : >> I expected only updates to existing rows but it is INSERTING new rows >> when there isn't a PK > > > Hmm - doesn't sound likely. Especially if you don't supply a primary key. > >> There are no triggers,views or rules associated with the tables .... >> and to make things worse I have a similar query to another table >> where the UPDATE works as expected >> and if I want to make INSERTs I have to make them :) >> It seems the UPDATE is working like the Mysql REPLACE ... I tested in >> Postgresql 7.3 in Linux and Postrgresql 8.0 in Win32 > > >> the new row in table084 has the field1,field2 from the where clause >> in the UPDATE >> the default values for field3 ,field4 and the SET values from the >> UPDATE to field5, field6, field7 > > >> UPDATE table084 >> SET field5=table090.field9, >> field6=table090.field11, >> field7=date_o(now()) >> WHERE table084.field1=table088.field6 >> AND table084.field2=table090.field4 >> AND table088.field1='DOC_TITLE' >> AND table088.field2=123456 >> AND table088.field1=table090.field1 >> AND table088.field2=table090.field2; > > > You should really have a FROM clause in this update - I'd have thought > you'd get an error with this in version 8.0 > > Could you show the actual problem: > > 1. BEGIN > 2. SELECT oid,cmin,cmax,* FROM table084 WHERE <conditions returning no > rows> > 3. Run above query > 4. SELECT oid,xmin,xmax,cmin,cmax,* FROM table084 WHERE <same > conditions as above> > 5. SELECT oid,xmin,xmax,cmin,cmax,* FROM table084 WHERE <row that has > been updated properly> > 6. ROLLBACK > > That way we can see that a row has really been inserted and which > transaction did it. > -- > Richard Huxton > Archonet Ltd >