Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
E
ensembl
Manage
Activity
Members
Labels
Plan
Issues
0
Issue boards
Milestones
Iterations
Wiki
Requirements
Jira
Code
Merge requests
1
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package Registry
Container Registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
ensembl-gh-mirror
ensembl
Commits
a303f43b
Commit
a303f43b
authored
14 years ago
by
Andreas Kusalananda Kähäri
Browse files
Options
Downloads
Patches
Plain Diff
get_species_and_object_type() now only uses one database handle per host
do its thing.
parent
47a437e1
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
modules/Bio/EnsEMBL/Registry.pm
+43
-41
43 additions, 41 deletions
modules/Bio/EnsEMBL/Registry.pm
with
43 additions
and
41 deletions
modules/Bio/EnsEMBL/Registry.pm
+
43
−
41
View file @
a303f43b
...
...
@@ -2423,39 +2423,39 @@ sub version_check {
=cut
my
%stable_id_stmts
=
(
'
gene
'
=>
"
SELECT m
eta
.meta_value
"
.
"
FROM gene_stable_id si
"
.
"
JOIN gene USING (gene_id)
"
.
"
JOIN seq_region USING (seq_region_id)
"
.
"
JOIN coord_system USING (coord_system_id)
"
.
"
JOIN meta USING (species_id)
"
.
"
WHERE si.stable_id = ?
"
.
"
AND m
eta
.meta_key =
'
species.production_name
'
",
'
transcript
'
=>
"
SELECT m
eta
.meta_value
"
.
"
FROM transcript_stable_id si
"
.
"
JOIN transcript USING (transcript_id)
"
.
"
JOIN seq_region USING (seq_region_id)
"
.
"
JOIN coord_system USING (coord_system_id)
"
.
"
JOIN meta USING (species_id)
"
.
"
WHERE si.stable_id = ?
"
.
"
AND m
eta
.meta_key =
'
species.production_name
'
",
'
exon
'
=>
"
SELECT m
eta
.meta_value
"
.
"
FROM exon_stable_id si
"
.
"
JOIN exon USING (exon_id)
"
.
"
JOIN seq_region USING (seq_region_id)
"
.
"
JOIN coord_system USING (coord_system_id)
"
.
"
JOIN meta USING (species_id)
"
.
"
WHERE si.stable_id = ?
"
.
"
AND m
eta
.meta_key =
'
species.production_name
'
",
'
translation
'
=>
"
SELECT m
eta
.meta_value
"
.
"
FROM translation_stable_id si
"
.
"
JOIN translation USING (translation_id)
"
.
"
JOIN transcript USING (transcript_id)
"
.
"
JOIN seq_region USING (seq_region_id)
"
.
"
JOIN coord_system USING (coord_system_id)
"
.
"
JOIN meta USING (species_id)
"
.
"
WHERE si.stable_id = ?
"
.
"
AND m
eta
.meta_key =
'
species.production_name
'
",
"
gene
"
=>
'
SELECT m.meta_value
'
.
'
FROM
%1$s.
gene_stable_id si
'
.
'
JOIN
%1$s.
gene USING (gene_id)
'
.
'
JOIN
%1$s.
seq_region USING (seq_region_id)
'
.
'
JOIN
%1$s.
coord_system USING (coord_system_id)
'
.
'
JOIN
%1$s.
meta
m
USING (species_id)
'
.
'
WHERE si.stable_id = ?
'
.
'
AND m.meta_key =
"
species.production_name"
'
,
"
transcript
"
=>
'
SELECT m.meta_value
'
.
'
FROM
%1$s.
transcript_stable_id si
'
.
'
JOIN
%1$s.
transcript USING (transcript_id)
'
.
'
JOIN
%1$s.
seq_region USING (seq_region_id)
'
.
'
JOIN
%1$s.
coord_system USING (coord_system_id)
'
.
'
JOIN
%1$s.
meta
m
USING (species_id)
'
.
'
WHERE si.stable_id = ?
'
.
'
AND m.meta_key =
"
species.production_name"
'
,
"
exon
"
=>
'
SELECT m.meta_value
'
.
'
FROM
%1$s.
exon_stable_id si
'
.
'
JOIN
%1$s.
exon USING (exon_id)
'
.
'
JOIN
%1$s.
seq_region USING (seq_region_id)
'
.
'
JOIN
%1$s.
coord_system USING (coord_system_id)
'
.
'
JOIN
%1$s.
meta
m
USING (species_id)
'
.
'
WHERE si.stable_id = ?
'
.
'
AND m.meta_key =
"
species.production_name"
'
,
"
translation
"
=>
'
SELECT m.meta_value
'
.
'
FROM
%1$s.
translation_stable_id si
'
.
'
JOIN
%1$s.
translation USING (translation_id)
'
.
'
JOIN
%1$s.
transcript USING (transcript_id)
'
.
'
JOIN
%1$s.
seq_region USING (seq_region_id)
'
.
'
JOIN
%1$s.
coord_system USING (coord_system_id)
'
.
'
JOIN
%1$s.
meta
m
USING (species_id)
'
.
'
WHERE si.stable_id = ?
'
.
'
AND m.meta_key =
"
species.production_name"
'
,
);
sub
get_species_and_object_type
{
...
...
@@ -2474,22 +2474,24 @@ sub get_species_and_object_type {
my
@match
;
my
$dbc
;
my
$dbh
;
OUTER:
foreach
my
$dba
(
@
{
$self
->
get_all_DBAdaptors
(
'
-group
'
=>
'
Core
'
)
}
)
foreach
my
$dba
(
sort
{
$a
->
dbc
()
->
host
()
cmp
$b
->
dbc
()
->
host
()
}
@
{
$self
->
get_all_DBAdaptors
(
'
-group
'
=>
'
Core
'
)
}
)
{
if
(
!
defined
(
$dbc
)
||
!
(
$dbc
->
host
()
eq
$dba
->
dbc
()
->
host
()
&&
$dbc
->
dbname
()
eq
$dba
->
dbc
()
->
dbname
()
)
)
||
$dbc
->
host
()
ne
$dba
->
dbc
()
->
host
()
)
{
$dbc
=
$dba
->
dbc
();
$dbh
=
$dbc
->
db_handle
();
}
my
$dbh
=
$dbc
->
db_handle
();
foreach
my
$type
(
@types
)
{
my
$sth
=
$dbh
->
prepare
(
$stable_id_stmts
{
lc
(
$type
)
}
);
my
$statement
=
sprintf
(
$stable_id_stmts
{
lc
(
$type
)
},
$dba
->
dbc
()
->
dbname
()
);
my
$sth
=
$dbh
->
prepare
(
$statement
);
$sth
->
bind_param
(
1
,
$stable_id
,
SQL_VARCHAR
);
$sth
->
execute
();
...
...
@@ -2504,7 +2506,7 @@ OUTER:
}
}
}
## end foreach my $dba (
@{ $self->get_all_DBAdaptors
...})
}
## end foreach my $dba (
sort { $a
...})
return
@match
;
}
## end sub get_species_and_object_type
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment