Re: [mart-dev] MartBuilder question

2007-05-26 Thread Brian Osborne
Richard,

I certainly did not set out with Biomart with the idea of learning more
about Postgres but that seems to be what's happening. That's life.

I've added a few lines to Biosql's Postgres script that allows you to create
Biosql in a specified schema, and I've modified that load_taxonomy.pl script
to load using a given database and schema. This all seems to work. Last
step, modify bioperl-db's load_seqdatabase.pl script to do the same...

BIO


On 5/25/07 6:08 AM, "Richard Holland" <[EMAIL PROTECTED]> wrote:

> Let me know how you get on with trying to do this within a non-public
> schema.




Re: [mart-dev] MartBuilder question

2007-05-25 Thread Richard Holland
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hmmm interesting idea. I'll certainly think about it.

cheers,
Richard

Guðmundur Árni Þórisson wrote:
> Of course, of course (silly me!). However, it may prove useful to have
> MBuilder optionally produce the table-definition SQL +  SQL-script to
> dump out the data to textfiles, to support heterogenous db-engine
> setups. The tables could then be created in the target database and
> textfiles subsequently loaded.
> 
> 
>Mummi
> 
> On 24 May 2007, at 16:59, Richard Holland wrote:
> 
> Hello.
> 
> The quick answer is 'no'.
> 
> The slightly longer answer is because it builds marts by executing
> 'create X as select Y from Z' statements against a single database - and
> so both source and target schemas need to be living in the database for
> this to work.
> 
> cheers,
> Richard
> 
> Guðmundur Árni Þórisson wrote:
 Richard, if I may pitch in a question: can one use MartBuilder to pull
 data out of say PostgreSQL and create + load into a mart in MySQL? The
 answer might be in the manual somewhere but I'm sure you have the quick
 answer!
It's possible I might for my project end up having the master
 database in PostgreSQL (for various reasons), but then have the
 corresponding Mart in MySQL + read-only MyISAM tables for speed.


  Mummi

 ---
 Gudmundur A. Thorisson, PhD student, Brookes lab
  Department of Genetics
  University of Leicester
  University Road
  Leicester, LE1 7RH, UK
  E-mail: [EMAIL PROTECTED]
  Tel: +44 (0)116 252-3055

 On 24 May 2007, at 16:34, Richard Holland wrote:

 The public thing is interesting.

 When you originally connected MartBuilder to your source schema, I'm
 assuming you used database=postgres and schema=bioseqdb?

 What target schema did you give it when you asked it to generate the
 SQL? Was is bioseqdbmart?

 Are both the bioseqdb and bioseqdbmart schemas in the same database, ie.
 postgres?

 cheers,
 Richard

 Brian Osborne wrote:
>>> Richard,
>>>
>>> So the SQL file's name is bioseqdbmart.sql, the source is bioseqdb
>>> and the
>>> mart or target is bioseqdbmart. OK, so:
>>>
>>> psql bioseqdbmart postgres < bioseqdbmart.sql
>>>
>>> might not work, I should be logged in. Let's log in...
>>>
>>> Hmm. I see:
>>>
>>> bioseqdbmart=# \i bioseqdbmart.sql
>>> psql:bioseqdbmart.sql:1: ERROR:  schema "bioseqdbmart" already exists
>>> SET
>>> psql:bioseqdbmart.sql:6: ERROR:  relation "public.bioentry" does not
>>> exist
>>> SET
>>> psql:bioseqdbmart.sql:9: ERROR:  relation "bioseqdbmart.temp__1" does
>>> not
>>> exist
>>> SET
>>>
>>> ...and more errors.
>>>
>>> "public.bioentry" is troubling, it should be
>>> "public.bioseqdb.bioentry" or
>>> "bioseqdb.bioentry", I think. That error comes from this:
>>>
>>> bioseqdbmart=# create table bioseqdbmart.TEMP__1 as select
>>> a.accession as
>>> accession,a.biodatabase_id as biodatabase_id,
>>> bioseqdbmart-# a.bioentry_id as bioentry_id_key,a.description as
>>> description,a.division as division,a.identifier as
>>> bioseqdbmart-# identifier,a.name as name,a.taxon_id as
>>> taxon_id,a.version as
>>> version,b.authority as authority,
>>> bioseqdbmart-# b.description as description_biodatabase,b.name as
>>> name_biodatabase from public.bioentry as a left join
>>> bioseqdbmart-# public.biodatabase as b on
>>> a.biodatabase_id=b.biodatabase_id;
>>> ERROR:  relation "public.bioentry" does not exist
>>> bioseqdbmart=#
>>>
>>>
>>> Brian O.
>>>
>>>
>>> On 5/24/07 10:36 AM, "Richard Holland" <[EMAIL PROTECTED]> wrote:
>>>
 run whilst logged in as the target schema owner.
>>>
>>>
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGVurZ4C5LeMEKA/QRAu0rAJ9dtmWc0L3424M/kQUARy0uB9ZLWgCdHd+H
YYHMaAxBpruQm1Nv8Q2PZz4=
=+PJW
-END PGP SIGNATURE-


Re: [mart-dev] MartBuilder question

2007-05-25 Thread Brian Osborne
Richard,

You may be right, but it appears that there is more than one way to solve
this. 

Now I can build the Biosql database with a specific schema and connect to it
in MartBuilder (e.g. "bioseqdb" and "biosql", no need to use the "public"
schema). The mart SQL script that's created by MartBuilder works now, and I
don't have to change any permissions. No data yet...

BIO


On 5/25/07 9:16 AM, "Richard Holland" <[EMAIL PROTECTED]> wrote:

> I think it might actually just boil down to permissions. Whilst logged
> in as the bioseqdbmart user can you do a select against any table in the
> public schema? If not, then there lies the problem.




Re: [mart-dev] MartBuilder question

2007-05-25 Thread Guðmundur Árni Þórisson
Of course, of course (silly me!). However, it may prove useful to  
have MBuilder optionally produce the table-definition SQL +  SQL- 
script to dump out the data to textfiles, to support heterogenous db- 
engine setups. The tables could then be created in the target  
database and textfiles subsequently loaded.



   Mummi

On 24 May 2007, at 16:59, Richard Holland wrote:


-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hello.

The quick answer is 'no'.

The slightly longer answer is because it builds marts by executing
'create X as select Y from Z' statements against a single database  
- and
so both source and target schemas need to be living in the database  
for

this to work.

cheers,
Richard

Guðmundur Árni Þórisson wrote:
Richard, if I may pitch in a question: can one use MartBuilder to  
pull
data out of say PostgreSQL and create + load into a mart in MySQL?  
The
answer might be in the manual somewhere but I'm sure you have the  
quick

answer!
   It's possible I might for my project end up having the master
database in PostgreSQL (for various reasons), but then have the
corresponding Mart in MySQL + read-only MyISAM tables for speed.


 Mummi

---
Gudmundur A. Thorisson, PhD student, Brookes lab
 Department of Genetics
 University of Leicester
 University Road
 Leicester, LE1 7RH, UK
 E-mail: [EMAIL PROTECTED]
 Tel: +44 (0)116 252-3055

On 24 May 2007, at 16:34, Richard Holland wrote:

The public thing is interesting.

When you originally connected MartBuilder to your source schema, I'm
assuming you used database=postgres and schema=bioseqdb?

What target schema did you give it when you asked it to generate the
SQL? Was is bioseqdbmart?

Are both the bioseqdb and bioseqdbmart schemas in the same  
database, ie.

postgres?

cheers,
Richard

Brian Osborne wrote:

Richard,

So the SQL file's name is bioseqdbmart.sql, the source is bioseqdb
and the
mart or target is bioseqdbmart. OK, so:

psql bioseqdbmart postgres < bioseqdbmart.sql

might not work, I should be logged in. Let's log in...

Hmm. I see:

bioseqdbmart=# \i bioseqdbmart.sql
psql:bioseqdbmart.sql:1: ERROR:  schema "bioseqdbmart" already  
exists

SET
psql:bioseqdbmart.sql:6: ERROR:  relation "public.bioentry"  
does not

exist
SET
psql:bioseqdbmart.sql:9: ERROR:  relation  
"bioseqdbmart.temp__1" does

not
exist
SET

...and more errors.

"public.bioentry" is troubling, it should be
"public.bioseqdb.bioentry" or
"bioseqdb.bioentry", I think. That error comes from this:

bioseqdbmart=# create table bioseqdbmart.TEMP__1 as select
a.accession as
accession,a.biodatabase_id as biodatabase_id,
bioseqdbmart-# a.bioentry_id as bioentry_id_key,a.description as
description,a.division as division,a.identifier as
bioseqdbmart-# identifier,a.name as name,a.taxon_id as
taxon_id,a.version as
version,b.authority as authority,
bioseqdbmart-# b.description as description_biodatabase,b.name as
name_biodatabase from public.bioentry as a left join
bioseqdbmart-# public.biodatabase as b on
a.biodatabase_id=b.biodatabase_id;
ERROR:  relation "public.bioentry" does not exist
bioseqdbmart=#


Brian O.


On 5/24/07 10:36 AM, "Richard Holland" <[EMAIL PROTECTED]> wrote:


run whilst logged in as the target schema owner.




-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGVbZe4C5LeMEKA/QRAioZAJ93gc2kLvyRHoj16iVIe+gE/bTszQCbBOYe
OYGNosThAaDoIBJ7b7pd2yo=
=ryuw
-END PGP SIGNATURE-




Re: [mart-dev] MartBuilder question

2007-05-25 Thread Richard Holland
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

I think it might actually just boil down to permissions. Whilst logged
in as the bioseqdbmart user can you do a select against any table in the
public schema? If not, then there lies the problem.

(Certainly in Oracle permissions need to be granted on the source schema
to allow the target schema owner to access it - not sure how this works
in Postgres with the public schema.)

cheers,
Richard


Brian Osborne wrote:
> Richard,
> 
> I certainly did not set out with Biomart with the idea of learning more
> about Postgres but that seems to be what's happening. That's life.
> 
> I've added a few lines to Biosql's Postgres script that allows you to create
> Biosql in a specified schema, and I've modified that load_taxonomy.pl script
> to load using a given database and schema. This all seems to work. Last
> step, modify bioperl-db's load_seqdatabase.pl script to do the same...
> 
> BIO
> 
> 
> On 5/25/07 6:08 AM, "Richard Holland" <[EMAIL PROTECTED]> wrote:
> 
>> Let me know how you get on with trying to do this within a non-public
>> schema.
> 
> 
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGVuGc4C5LeMEKA/QRAt4BAJwLrr59quFd4A4YuvbW5yiHxOociQCdF884
t5mYUi29m6BT8IQAtMm2Q90=
=CVSO
-END PGP SIGNATURE-


Re: [mart-dev] MartBuilder question

2007-05-25 Thread Arek Kasprzyk


On 25 May 2007, at 11:08, Richard Holland wrote:


-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

To be honest I'm not a Postgres expert. From what I understand 'public'
is some kind of special schema that shouldn't normally be used, but I
might be wrong!


'public'  is just a default postgress schema. If you setup
a new database and you do not specify otherwise, your tables will
go by default to a public schema. Assuming that your source schema
is in public, it would be probably best to set target schema in MBuilder
as other than public to keep mart and source schema separated
(as we normally do anyway)

a.




Let me know how you get on with trying to do this within a non-public
schema.

cheers,
Richard

Brian Osborne wrote:

Richard,

I think I see the problem, not a surprising one. Biosql's Postgres  
script
does not create a schema within the Biosql database, you're just  
populating
the db with tables. Within MartBuilder you must specify a schema,  
entering

database as 'bioseqdb' and schema as 'bioseqdb' does not work ('schema
connection failed'). So I tried other possibilities and 'public'  
worked for

some reason. Perhaps it shouldn't have?

However, since 'public.bioentry' doesn't exist the mart is not built.  
Looks
like I have to modify the Biosql Postgres script to create a schema,  
not

just a database (it's based on Mysql).


BIO


On 5/24/07 10:36 AM, "Richard Holland" <[EMAIL PROTECTED]> wrote:


Yes, I know BioSQL well! :)




-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGVrWt4C5LeMEKA/QRAgBZAJ0QJYP39xRn+WABo/k2gXvRBjfHqQCfWinl
ENmJDju5IJkaFLKbwtVkRoo=
=O74g
-END PGP SIGNATURE-




 
---

Arek Kasprzyk
EMBL-European Bioinformatics Institute.
Wellcome Trust Genome Campus, Hinxton,
Cambridge CB10 1SD, UK.
Tel: +44-(0)1223-494606
Fax: +44-(0)1223-494468
 
---






Re: [mart-dev] MartBuilder question

2007-05-25 Thread Richard Holland
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

To be honest I'm not a Postgres expert. From what I understand 'public'
is some kind of special schema that shouldn't normally be used, but I
might be wrong!

Let me know how you get on with trying to do this within a non-public
schema.

cheers,
Richard

Brian Osborne wrote:
> Richard,
> 
> I think I see the problem, not a surprising one. Biosql's Postgres script
> does not create a schema within the Biosql database, you're just populating
> the db with tables. Within MartBuilder you must specify a schema, entering
> database as 'bioseqdb' and schema as 'bioseqdb' does not work ('schema
> connection failed'). So I tried other possibilities and 'public' worked for
> some reason. Perhaps it shouldn't have?
> 
> However, since 'public.bioentry' doesn't exist the mart is not built. Looks
> like I have to modify the Biosql Postgres script to create a schema, not
> just a database (it's based on Mysql).
> 
> 
> BIO
> 
> 
> On 5/24/07 10:36 AM, "Richard Holland" <[EMAIL PROTECTED]> wrote:
> 
>> Yes, I know BioSQL well! :)
> 
> 
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGVrWt4C5LeMEKA/QRAgBZAJ0QJYP39xRn+WABo/k2gXvRBjfHqQCfWinl
ENmJDju5IJkaFLKbwtVkRoo=
=O74g
-END PGP SIGNATURE-


Re: [mart-dev] MartBuilder question

2007-05-24 Thread Richard Holland
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hello.

The quick answer is 'no'.

The slightly longer answer is because it builds marts by executing
'create X as select Y from Z' statements against a single database - and
so both source and target schemas need to be living in the database for
this to work.

cheers,
Richard

Guðmundur Árni Þórisson wrote:
> Richard, if I may pitch in a question: can one use MartBuilder to pull
> data out of say PostgreSQL and create + load into a mart in MySQL? The
> answer might be in the manual somewhere but I'm sure you have the quick
> answer!
>It's possible I might for my project end up having the master
> database in PostgreSQL (for various reasons), but then have the
> corresponding Mart in MySQL + read-only MyISAM tables for speed.
> 
> 
>  Mummi
> 
> ---
> Gudmundur A. Thorisson, PhD student, Brookes lab
>  Department of Genetics
>  University of Leicester
>  University Road
>  Leicester, LE1 7RH, UK
>  E-mail: [EMAIL PROTECTED]
>  Tel: +44 (0)116 252-3055
> 
> On 24 May 2007, at 16:34, Richard Holland wrote:
> 
> The public thing is interesting.
> 
> When you originally connected MartBuilder to your source schema, I'm
> assuming you used database=postgres and schema=bioseqdb?
> 
> What target schema did you give it when you asked it to generate the
> SQL? Was is bioseqdbmart?
> 
> Are both the bioseqdb and bioseqdbmart schemas in the same database, ie.
> postgres?
> 
> cheers,
> Richard
> 
> Brian Osborne wrote:
 Richard,

 So the SQL file's name is bioseqdbmart.sql, the source is bioseqdb
 and the
 mart or target is bioseqdbmart. OK, so:

 psql bioseqdbmart postgres < bioseqdbmart.sql

 might not work, I should be logged in. Let's log in...

 Hmm. I see:

 bioseqdbmart=# \i bioseqdbmart.sql
 psql:bioseqdbmart.sql:1: ERROR:  schema "bioseqdbmart" already exists
 SET
 psql:bioseqdbmart.sql:6: ERROR:  relation "public.bioentry" does not
 exist
 SET
 psql:bioseqdbmart.sql:9: ERROR:  relation "bioseqdbmart.temp__1" does
 not
 exist
 SET

 ...and more errors.

 "public.bioentry" is troubling, it should be
 "public.bioseqdb.bioentry" or
 "bioseqdb.bioentry", I think. That error comes from this:

 bioseqdbmart=# create table bioseqdbmart.TEMP__1 as select
 a.accession as
 accession,a.biodatabase_id as biodatabase_id,
 bioseqdbmart-# a.bioentry_id as bioentry_id_key,a.description as
 description,a.division as division,a.identifier as
 bioseqdbmart-# identifier,a.name as name,a.taxon_id as
 taxon_id,a.version as
 version,b.authority as authority,
 bioseqdbmart-# b.description as description_biodatabase,b.name as
 name_biodatabase from public.bioentry as a left join
 bioseqdbmart-# public.biodatabase as b on
 a.biodatabase_id=b.biodatabase_id;
 ERROR:  relation "public.bioentry" does not exist
 bioseqdbmart=#


 Brian O.


 On 5/24/07 10:36 AM, "Richard Holland" <[EMAIL PROTECTED]> wrote:

> run whilst logged in as the target schema owner.


-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGVbZe4C5LeMEKA/QRAioZAJ93gc2kLvyRHoj16iVIe+gE/bTszQCbBOYe
OYGNosThAaDoIBJ7b7pd2yo=
=ryuw
-END PGP SIGNATURE-


Re: [mart-dev] MartBuilder question

2007-05-24 Thread Guðmundur Árni Þórisson
Richard, if I may pitch in a question: can one use MartBuilder to  
pull data out of say PostgreSQL and create + load into a mart in  
MySQL? The answer might be in the manual somewhere but I'm sure you  
have the quick answer!
   It's possible I might for my project end up having the master  
database in PostgreSQL (for various reasons), but then have the  
corresponding Mart in MySQL + read-only MyISAM tables for speed.



 Mummi

---
Gudmundur A. Thorisson, PhD student, Brookes lab
 Department of Genetics
 University of Leicester
 University Road
 Leicester, LE1 7RH, UK
 E-mail: [EMAIL PROTECTED]
 Tel: +44 (0)116 252-3055

On 24 May 2007, at 16:34, Richard Holland wrote:


-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

The public thing is interesting.

When you originally connected MartBuilder to your source schema, I'm
assuming you used database=postgres and schema=bioseqdb?

What target schema did you give it when you asked it to generate the
SQL? Was is bioseqdbmart?

Are both the bioseqdb and bioseqdbmart schemas in the same  
database, ie.

postgres?

cheers,
Richard

Brian Osborne wrote:

Richard,

So the SQL file's name is bioseqdbmart.sql, the source is bioseqdb  
and the

mart or target is bioseqdbmart. OK, so:

psql bioseqdbmart postgres < bioseqdbmart.sql

might not work, I should be logged in. Let's log in...

Hmm. I see:

bioseqdbmart=# \i bioseqdbmart.sql
psql:bioseqdbmart.sql:1: ERROR:  schema "bioseqdbmart" already exists
SET
psql:bioseqdbmart.sql:6: ERROR:  relation "public.bioentry" does  
not exist

SET
psql:bioseqdbmart.sql:9: ERROR:  relation "bioseqdbmart.temp__1"  
does not

exist
SET

...and more errors.

"public.bioentry" is troubling, it should be  
"public.bioseqdb.bioentry" or

"bioseqdb.bioentry", I think. That error comes from this:

bioseqdbmart=# create table bioseqdbmart.TEMP__1 as select  
a.accession as

accession,a.biodatabase_id as biodatabase_id,
bioseqdbmart-# a.bioentry_id as bioentry_id_key,a.description as
description,a.division as division,a.identifier as
bioseqdbmart-# identifier,a.name as name,a.taxon_id as  
taxon_id,a.version as

version,b.authority as authority,
bioseqdbmart-# b.description as description_biodatabase,b.name as
name_biodatabase from public.bioentry as a left join
bioseqdbmart-# public.biodatabase as b on  
a.biodatabase_id=b.biodatabase_id;

ERROR:  relation "public.bioentry" does not exist
bioseqdbmart=#


Brian O.


On 5/24/07 10:36 AM, "Richard Holland" <[EMAIL PROTECTED]> wrote:


run whilst logged in as the target schema owner.




-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGVbCJ4C5LeMEKA/QRAr1lAKCfLBi6HpDwCo1liCikscGmVxxdjQCeKljT
zHNwNkyL8Y8DDVlSjGaKJeY=
=6VHt
-END PGP SIGNATURE-




Re: [mart-dev] MartBuilder question

2007-05-24 Thread Richard Holland
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

The public thing is interesting.

When you originally connected MartBuilder to your source schema, I'm
assuming you used database=postgres and schema=bioseqdb?

What target schema did you give it when you asked it to generate the
SQL? Was is bioseqdbmart?

Are both the bioseqdb and bioseqdbmart schemas in the same database, ie.
postgres?

cheers,
Richard

Brian Osborne wrote:
> Richard,
> 
> So the SQL file's name is bioseqdbmart.sql, the source is bioseqdb and the
> mart or target is bioseqdbmart. OK, so:
> 
> psql bioseqdbmart postgres < bioseqdbmart.sql
> 
> might not work, I should be logged in. Let's log in...
> 
> Hmm. I see:
> 
> bioseqdbmart=# \i bioseqdbmart.sql
> psql:bioseqdbmart.sql:1: ERROR:  schema "bioseqdbmart" already exists
> SET
> psql:bioseqdbmart.sql:6: ERROR:  relation "public.bioentry" does not exist
> SET
> psql:bioseqdbmart.sql:9: ERROR:  relation "bioseqdbmart.temp__1" does not
> exist
> SET
> 
> ...and more errors.
> 
> "public.bioentry" is troubling, it should be "public.bioseqdb.bioentry" or
> "bioseqdb.bioentry", I think. That error comes from this:
> 
> bioseqdbmart=# create table bioseqdbmart.TEMP__1 as select a.accession as
> accession,a.biodatabase_id as biodatabase_id,
> bioseqdbmart-# a.bioentry_id as bioentry_id_key,a.description as
> description,a.division as division,a.identifier as
> bioseqdbmart-# identifier,a.name as name,a.taxon_id as taxon_id,a.version as
> version,b.authority as authority,
> bioseqdbmart-# b.description as description_biodatabase,b.name as
> name_biodatabase from public.bioentry as a left join
> bioseqdbmart-# public.biodatabase as b on a.biodatabase_id=b.biodatabase_id;
> ERROR:  relation "public.bioentry" does not exist
> bioseqdbmart=# 
> 
> 
> Brian O.
> 
> 
> On 5/24/07 10:36 AM, "Richard Holland" <[EMAIL PROTECTED]> wrote:
> 
>> run whilst logged in as the target schema owner.
> 
> 
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGVbCJ4C5LeMEKA/QRAr1lAKCfLBi6HpDwCo1liCikscGmVxxdjQCeKljT
zHNwNkyL8Y8DDVlSjGaKJeY=
=6VHt
-END PGP SIGNATURE-


Re: [mart-dev] MartBuilder question

2007-05-24 Thread Brian Osborne
Richard,

I think I see the problem, not a surprising one. Biosql's Postgres script
does not create a schema within the Biosql database, you're just populating
the db with tables. Within MartBuilder you must specify a schema, entering
database as 'bioseqdb' and schema as 'bioseqdb' does not work ('schema
connection failed'). So I tried other possibilities and 'public' worked for
some reason. Perhaps it shouldn't have?

However, since 'public.bioentry' doesn't exist the mart is not built. Looks
like I have to modify the Biosql Postgres script to create a schema, not
just a database (it's based on Mysql).


BIO


On 5/24/07 10:36 AM, "Richard Holland" <[EMAIL PROTECTED]> wrote:

> Yes, I know BioSQL well! :)




Re: [mart-dev] MartBuilder question

2007-05-24 Thread Brian Osborne
Richard,

So the SQL file's name is bioseqdbmart.sql, the source is bioseqdb and the
mart or target is bioseqdbmart. OK, so:

psql bioseqdbmart postgres < bioseqdbmart.sql

might not work, I should be logged in. Let's log in...

Hmm. I see:

bioseqdbmart=# \i bioseqdbmart.sql
psql:bioseqdbmart.sql:1: ERROR:  schema "bioseqdbmart" already exists
SET
psql:bioseqdbmart.sql:6: ERROR:  relation "public.bioentry" does not exist
SET
psql:bioseqdbmart.sql:9: ERROR:  relation "bioseqdbmart.temp__1" does not
exist
SET

...and more errors.

"public.bioentry" is troubling, it should be "public.bioseqdb.bioentry" or
"bioseqdb.bioentry", I think. That error comes from this:

bioseqdbmart=# create table bioseqdbmart.TEMP__1 as select a.accession as
accession,a.biodatabase_id as biodatabase_id,
bioseqdbmart-# a.bioentry_id as bioentry_id_key,a.description as
description,a.division as division,a.identifier as
bioseqdbmart-# identifier,a.name as name,a.taxon_id as taxon_id,a.version as
version,b.authority as authority,
bioseqdbmart-# b.description as description_biodatabase,b.name as
name_biodatabase from public.bioentry as a left join
bioseqdbmart-# public.biodatabase as b on a.biodatabase_id=b.biodatabase_id;
ERROR:  relation "public.bioentry" does not exist
bioseqdbmart=# 


Brian O.


On 5/24/07 10:36 AM, "Richard Holland" <[EMAIL PROTECTED]> wrote:

> run whilst logged in as the target schema owner.




Re: [mart-dev] MartBuilder question

2007-05-24 Thread Richard Holland
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hello.

Yes, I know BioSQL well! :)

The script 'create' statements are of the form:

 create X as select Y from Z;

These statements will therefore create tables and simultaneously
populate them.

In order to do this, the script requires full read permissions on the
source schema, and full write permissions on the target schema, and
needs to be run whilst logged in as the target schema owner.

cheers,
Richard

Brian Osborne wrote:
> mart-dev,
> 
> I?m just starting to use BioMart 0.5, my aim is to build new marts from
> various bio-schemas and see if I can contribute to the documentation. My
> first target schema is Biosql (biosql.org), I?m using their latest
> schema from their CVS and have created my database in Postgres and
> loaded it with a small number of sequence records, ~2000. I don?t know
> if you know Biosql, it?s a small-ish schema dealing with sequence,
> sequence annotation, and taxonomy. There is a central bioentry table
> with identifiers and descriptive information on sequences.
> 
> My question: I?m on page 17 of the manual (nice manual, by the way)
> which describes how to use MartBuilder. I?ve created an SQL script from
> my Biosql database that should make a new mart but I?m a bit puzzled ?
> shouldn?t this script contain data? That?s what page 17 seems to be
> saying. The SQL script I?ve created has create and alter and drop
> statements but not much more. I?m also having trouble executing this
> script but let?s take this one step at a time...
> 
> Thanks again,
> 
> Brian O.
> 
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGVaL04C5LeMEKA/QRAuABAJ9KxlvbF3H5iQotiH5GC27QeCI/rACeJt4v
0OiuCFNL0hF2IWN7n7VQF2w=
=dxRe
-END PGP SIGNATURE-