I am trying to setup a biomart 0.8 instance that has datasources in two separate Oracle databases. Each database instance has just one table with two columns, a unique identifier and varchar column. The unique identifier columns are the link between the two datasets. I am trying to setup a simple join between these two tables. According the rc6 documentation, it appears that creating a pointer attribute would create this link and effectively 'inner join' these to datasets at runtime. I'm able to create the pointer attribute in the target access point, setup the datasource link, start the webserver and attempt to run the query. From the web interface I see the 3 attributes (the shared unique ID, varchar column from datasource 'A', varchar column from datasource 'B'), select them and run the query...which errors out. I ran this query through the Java API in Eclipse and while debugging noticed that an exception is thrown when trying to query the second datasource: ORA-01795: maximum number of expressions in a list is 1000.
Stepping through the code in the debugger, it appears that it's running a query to get all of the results from datasource 'A', and then turning the ID column into a list and using it in a subsequent query to get the necessary resultset from datasource 'B'...but there are well over 1000 records I am trying to join. Is there a way around this so that the query mechanism doesn't rely on using an IN(<list>) to join these two datasets? Thanks so much in advance. I really like what I see in the new release and am looking forward to getting this up and running! Thanks again! Tony
_______________________________________________ Users mailing list [email protected] https://lists.biomart.org/mailman/listinfo/users
