[EP-tech] a lot of warnings concerning uninitialized value
Thomas Lauke
th.lauke at arcor.de
Fri Nov 6 10:46:52 GMT 2015
Hi all,
running http://files.eprints.org/591/ for an empty default repository of 3.3.14 (just initial admin is set) by
`Eprints/bin/email_users --dry-run --verbose --verbose <repoID> admin` I got:
Starting EPrints Repository.
Connecting to DB ... Database execute debug: SET NAMES 'utf8'
done.
Database execute debug: SELECT `user`.`userid` FROM `user` WHERE `user`.`usertype` = 'admin' GROUP BY `user`.`userid`
Total number of type 'admin': 1
DRY RUN: ON
Database execute debug: SELECT `userid`,`rev_number`,`username`,`usertype`,`newemail`,`pin`,`pinsettime`,`joined_year`,`joined_month`,`joined_day`,`joined_hour`,`joined_minute`,`joined_second`,`email`,`lang`,`frequency`,`mailempty`,`latitude`,`longitude`,`preference`,`name_family`,`name_given`,`name_lineage`,`name_honourific`,`dept`,`org`,`address`,`country`,`hideemail`,`url` FROM `user` WHERE `userid` IN (1)
Use of uninitialized value in subroutine entry at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Use of uninitialized value in subroutine entry at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
Database execute debug: SELECT `userid`,`pos`,`editperms` FROM `user_editperms` WHERE `userid` IN (1)
Database execute debug: SELECT `userid`,`pos`,`roles` FROM `user_roles` WHERE `userid` IN (1)
Database execute debug: SELECT `userid`,`pos`,`items_fields` FROM `user_items_fields` WHERE `userid` IN (1)
Undefined phrase: email_users/notification_body (en) at line 144 in Eprints/bin/email_users
$name = undef;
Skipping userid: 1 - User record incomplete - No email sent.
Number of Emails sent: 0.
Number of Emails skipped: 1.
Ending EPrints Repository.
or in detail after some debugging:
perl -d Eprints/bin/email_users --dry-run --verbose --verbose <repoID> admin
Loading DB routines from perl5db.pl version 1.44
Editor support available.
Starting EPrints Repository.
Connecting to DB ... Database execute debug: SET NAMES 'utf8'
done.
Database execute debug: SELECT `user`.`userid` FROM `user` WHERE `user`.`usertype` = 'admin' GROUP BY `user`.`userid`
Total number of type 'admin': 1
DRY RUN: ON
:
EPrints::Database::get_dataobjs(/usr/share/eprints3/bin/../perl_lib/EPrints/Database.pm:2637):
2637: $self->execute( $sth, $sql );
DB<5>
Database execute debug: SELECT `userid`,`rev_number`,`username`,`usertype`,`newemail`,`pin`,`pinsettime`,`joined_year`,`joined_month`,`joined_day`,`joined_hour`,`joined_minute`,`joined_second`,`email`,`lang`,`frequency`,`mailempty`,`latitude`,`longitude`,`preference`,`name_family`,`name_given`,`name_lineage`,`name_honourific`,`dept`,`org`,`address`,`country`,`hideemail`,`url` FROM `user` WHERE `userid` IN (1)
EPrints::Database::get_dataobjs(/usr/share/eprints3/bin/../perl_lib/EPrints/Database.pm:2639):
2639: while(my @row = $sth->fetchrow_array)
DB<5> x @row
0 1
1 1
2 'admin'
3 'admin'
4 undef
5 undef
6 undef
7 2015
8 10
9 9
10 12
11 1
12 12
13 'my.mail at here'
14 undef
15 'never'
16 'FALSE'
17 undef
18 undef
19 undef
20 undef
21 undef
22 undef
23 undef
24 undef
25 undef
26 undef
27 undef
28 'TRUE'
29 undef
DB<6> n
2643: {
EPrints::Database::get_dataobjs(/usr/share/eprints3/bin/../perl_lib/EPrints/Database.pm:2644):
2644: $epdata->{$field->{name}} = $field->value_from_sql_row( $session, \@row );
DB<6>
Use of uninitialized value in subroutine entry at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
at /usr/share/eprints3/bin/../perl_lib/EPrints/MetaField/Id.pm line 50.
EPrints::MetaField::Id::value_from_sql_row(EPrints::MetaField::Email=HASH(0x61ae220), EPrints::Repository=HASH(0x58a8b70), ARRAY(0x2c878b8)) called at /usr/share/eprints3/bin/../perl_lib/EPrints/Database.pm line 2644
EPrints::Database::get_dataobjs(EPrints::Database::mysql=HASH(0x61e91d0), EPrints::DataSet=HASH(0x614d470), 1) called at /usr/share/eprints3/bin/../perl_lib/EPrints/List.pm line 616
EPrints::List::_get_records(EPrints::List=HASH(0x3c9b020), 0, 100, 0) called at /usr/share/eprints3/bin/../perl_lib/EPrints/List.pm line 511
EPrints::List::slice(EPrints::List=HASH(0x3c9b020), 0, 100) called at /usr/share/eprints3/bin/../perl_lib/EPrints/List.pm line 661
EPrints::List::map(EPrints::List=HASH(0x3c9b020), CODE(0x5837268)) called at Eprints/bin/email_users line 172
EPrints::Database::get_dataobjs(/usr/share/eprints3/bin/../perl_lib/EPrints/Database.pm:2644):
How to fix these warnings?
Many thanks in advance
Thomas
More information about the Eprints-tech
mailing list