(This issue is not related to #1003788: PostgreSQL: PDOException:Invalid text representation when attempting to load an entity with a string or non-scalar ID).
see #7 for more serious cause of this issue.
On enabling the module PDOException: SQLSTATE[22P02] is raising making it not usable with postgresql. (auto entity label tab itself is not available)
Is this module only for mysql?
PDOException: SQLSTATE[22P02]: Invalid text representation: 7 ERROR: invalid input syntax for integer: "2.1" LINE 1: ...uto label', 't', '', '', 'a:0:{}', '132', '', '', '2.1', 'si... ^: INSERT INTO menu_router (path, load_functions, to_arg_functions, access_callback, access_arguments, page_callback, page_arguments, delivery_callback, fit, number_parts, context, tab_parent, tab_root, title, title_callback, title_arguments, theme_callback, theme_arguments, type, description, position, weight, include_file) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2, :db_insert_placeholder_3, :db_insert_placeholder_4, :db_insert_placeholder_5, :db_insert_placeholder_6, :db_insert_placeholder_7, :db_insert_placeholder_8, :db_insert_placeholder_9, :db_insert_placeholder_10, :db_insert_placeholder_11, :db_insert_placeholder_12, :db_insert_placeholder_13, :db_insert_placeholder_14, :db_insert_placeholder_15, :db_insert_placeholder_16, :db_insert_placeholder_17, :db_insert_placeholder_18, :db_insert_placeholder_19, :db_insert_placeholder_20, :db_insert_placeholder_21, :db_insert_placeholder_22), (:db_insert_placeholder_23, :db_insert_placeholder_24, :db_insert_placeholder_25, :db_insert_placeholder_26, :db_insert_placeholder_27, :db_insert_placeholder_28, :db_insert_placeholder_29, :db_insert_placeholder_30, :db_insert_placeholder_31, :db_insert_placeholder_32, :db_insert_placeholder_33, :db_insert_placeholder_34, :db_insert_placeholder_35, :db_insert_placeholder_36, :db_insert_placeholder_37, :db_insert_placeholder_38, :db_insert_placeholder_39, :db_insert_placeholder_40, :db_insert_placeholder_41, :db_insert_placeholder_42, :db_insert_placeholder_43, :db_insert_placeholder_44, :db_insert_placeholder_45), (:db_insert_placeholder_46, :db_insert_placeholder_47, :db_insert_placeholder_48, :db_insert_placeholder_49, :db_insert_placeholder_50, :db_insert_placeholder_51, :db_insert_placeholder_52, :db_insert_placeholder_53, :db_insert_placeholder_54, :db_insert_placeholder_55, :db_insert_placeholder_56, :db_insert_placeholder_57, :db_insert_placeholder_58, :db_insert_placeholder_59, :db_insert_placeholder_60, :db_insert_placeholder_61, :db_insert_placeholder_62, :db_insert_placeholder_63, :db_insert_placeholder_64, :db_insert_placeholder_65, :db_insert_placeholder_66, :db_insert_placeholder_67, :db_insert_placeholder_68), (:db_insert_placeholder_69, :db_insert_placeholder_70, :db_insert_placeholder_71, :db_insert_placeholder_72, :db_insert_placeholder_73, :db_insert_placeholder_74, :db_insert_placeholder_75, :db_insert_placeholder_76, :db_insert_placeholder_77, :db_insert_placeholder_78, :db_insert_placeholder_79, :db_insert_placeholder_80, :db_insert_placeholder_81, :db_insert_placeholder_82, :db_insert_placeholder_83, :db_insert_placeholder_84, :db_insert_placeholder_85, :db_insert_placeholder_86, :db_insert_placeholder_87, :db_insert_placeholder_88, :db_insert_placeholder_89, :db_insert_placeholder_90, :db_insert_placeholder_91), (:db_insert_placeholder_92, :db_insert_placeholder_93, :db_insert_placeholder_94, :db_insert_placeholder_95, :db_insert_placeholder_96, :db_insert_placeholder_97, :db_insert_placeholder_98, :db_insert_placeholder_99, :db_insert_placeholder_100, :db_insert_placeholder_101, :db_insert_placeholder_102, :db_insert_placeholder_103, :db_insert_placeholder_104, :db_insert_placeholder_105, :db_insert_placeholder_106, :db_insert_placeholder_107, :db_insert_placeholder_108, :db_insert_placeholder_109, :db_insert_placeholder_110, :db_insert_placeholder_111, :db_insert_placeholder_112, :db_insert_placeholder_113, :db_insert_placeholder_114), (:db_insert_placeholder_115, :db_insert_placeholder_116, :db_insert_placeholder_117, :db_insert_placeholder_118, :db_insert_placeholder_119, :db_insert_placeholder_120, :db_insert_placeholder_121, :db_insert_placeholder_122, :db_insert_placeholder_123, :db_insert_placeholder_124, :db_insert_placeholder_125, :db_insert_placeholder_126, :db_insert_placeholder_127, :db_insert_placeholder_128, :db_insert_placeholder_129, :db_insert_placeholder_130, :db_insert_placeholder_131, :db_insert_placeholder_132, :db_insert_placeholder_133, :db_insert_placeholder_134, :db_insert_placeholder_135, :db_insert_placeholder_136, :db_insert_placeholder_137), (:db_insert_placeholder_138, :db_insert_placeholder_139, :db_insert_placeholder_140, :db_insert_placeholder_141, :db_insert_placeholder_142, :db_insert_placeholder_143, :db_insert_placeholder_144, :db_insert_placeholder_145, :db_insert_placeholder_146, :db_insert_placeholder_147, :db_insert_placeholder_148, :db_insert_placeholder_149, :db_insert_placeholder_150, :db_insert_placeholder_151, :db_insert_placeholder_152, :db_insert_placeholder_153, :db_insert_placeholder_154, :db_insert_placeholder_155, :db_insert_placeholder_156, :db_insert_placeholder_157, :db_insert_placeholder_158, :db_insert_placeholder_159, :db_insert_placeholder_160), (:db_insert_placeholder_161, :db_insert_placeholder_162, :db_insert_placeholder_163, :db_insert_placeholder_164, :db_insert_placeholder_165, :db_insert_placeholder_166, :db_insert_placeholder_167, :db_insert_placeholder_168, :db_insert_placeholder_169, :db_insert_placeholder_170, :db_insert_placeholder_171, :db_insert_placeholder_172, :db_insert_placeholder_173, :db_insert_placeholder_174, :db_insert_placeholder_175, :db_insert_placeholder_176, :db_insert_placeholder_177, :db_insert_placeholder_178, :db_insert_placeholder_179, :db_insert_placeholder_180, :db_insert_placeholder_181, :db_insert_placeholder_182, :db_insert_placeholder_183), (:db_insert_placeholder_184, :db_insert_placeholder_185, :db_insert_placeholder_186, :db_insert_placeholder_187, :db_insert_placeholder_188, :db_insert_placeholder_189, :db_insert_placeholder_190, :db_insert_placeholder_191, :db_insert_placeholder_192, :db_insert_placeholder_193, :db_insert_placeholder_194, :db_insert_placeholder_195, :db_insert_placeholder_196, :db_insert_placeholder_197, :db_insert_placeholder_198, :db_insert_placeholder_199, :db_insert_placeholder_200, :db_insert_placeholder_201, :db_insert_placeholder_202, :db_insert_placeholder_203, :db_insert_placeholder_204, :db_insert_placeholder_205, :db_insert_placeholder_206), (:db_insert_placeholder_207, :db_insert_placeholder_208, :db_insert_placeholder_209, :db_insert_placeholder_210, :db_insert_placeholder_211, :db_insert_placeholder_212, :db_insert_placeholder_213, :db_insert_placeholder_214, :db_insert_placeholder_215, :db_insert_placeholder_216, :db_insert_placeholder_217, :db_insert_placeholder_218, :db_insert_placeholder_219, :db_insert_placeholder_220, :db_insert_placeholder_221, :db_insert_placeholder_222, :db_insert_placeholder_223, :db_insert_placeholder_224, :db_insert_placeholder_225, :db_insert_placeholder_226, :db_insert_placeholder_227, :db_insert_placeholder_228, :db_insert_placeholder_229), (:db_insert_placeholder_230, :db_insert_placeholder_231, :db_insert_placeholder_232, :db_insert_placeholder_233, :db_insert_placeholder_234, :db_insert_placeholder_235, :db_insert_placeholder_236, :db_insert_placeholder_237, :db_insert_placeholder_238, :db_insert_placeholder_239, :db_insert_placeholder_240, :db_insert_placeholder_241, :db_insert_placeholder_242, :db_insert_placeholder_243, :db_insert_placeholder_244, :db_insert_placeholder_245, :db_insert_placeholder_246, :db_insert_placeholder_247, :db_insert_placeholder_248, :db_insert_placeholder_249, :db_insert_placeholder_250, :db_insert_placeholder_251, :db_insert_placeholder_252), (:db_insert_placeholder_253, :db_insert_placeholder_254, :db_insert_placeholder_255, :db_insert_placeholder_256, :db_insert_placeholder_257, :db_insert_placeholder_258, :db_insert_placeholder_259, :db_insert_placeholder_260, :db_insert_placeholder_261, :db_insert_placeholder_262, :db_insert_placeholder_263, :db_insert_placeholder_264, :db_insert_placeholder_265, :db_insert_placeholder_266, :db_insert_placeholder_267, :db_insert_placeholder_268, :db_insert_placeholder_269, :db_insert_placeholder_270, :db_insert_placeholder_271, :db_insert_placeholder_272, :db_insert_placeholder_273, :db_insert_placeholder_274, :db_insert_placeholder_275), (:db_insert_placeholder_276, :db_insert_placeholder_277, :db_insert_placeholder_278, :db_insert_placeholder_279, :db_insert_placeholder_280, :db_insert_placeholder_281, :db_insert_placeholder_282, :db_insert_placeholder_283, :db_insert_placeholder_284, :db_insert_placeholder_285, :db_insert_placeholder_286, :db_insert_placeholder_287, :db_insert_placeholder_288, :db_insert_placeholder_289, :db_insert_placeholder_290, :db_insert_placeholder_291, :db_insert_placeholder_292, :db_insert_placeholder_293, :db_insert_placeholder_294, :db_insert_placeholder_295, :db_insert_placeholder_296, :db_insert_placeholder_297, :db_insert_placeholder_298), (:db_insert_placeholder_299, :db_insert_placeholder_300, :db_insert_placeholder_301, :db_insert_placeholder_302, :db_insert_placeholder_303, :db_insert_placeholder_304, :db_insert_placeholder_305, :db_insert_placeholder_306, :db_insert_placeholder_307, :db_insert_placeholder_308, :db_insert_placeholder_309, :db_insert_placeholder_310, :db_insert_placeholder_311, :db_insert_placeholder_312, :db_insert_placeholder_313, :db_insert_placeholder_314, :db_insert_placeholder_315, :db_insert_placeholder_316, :db_insert_placeholder_317, :db_insert_placeholder_318, :db_insert_placeholder_319, :db_insert_placeholder_320, :db_insert_placeholder_321), (:db_insert_placeholder_322, :db_insert_placeholder_323, :db_insert_placeholder_324, :db_insert_placeholder_325, :db_insert_placeholder_326, :db_insert_placeholder_327, :db_insert_placeholder_328, :db_insert_placeholder_329, :db_insert_placeholder_330, :db_insert_placeholder_331, :db_insert_placeholder_332, :db_insert_placeholder_333, :db_insert_placeholder_334, :db_insert_placeholder_335, :db_insert_placeholder_336, :db_insert_placeholder_337, :db_insert_placeholder_338, :db_insert_placeholder_339, :db_insert_placeholder_340, :db_insert_placeholder_341, :db_insert_placeholder_342, :db_insert_placeholder_343, :db_insert_placeholder_344), (:db_insert_placeholder_345, :db_insert_placeholder_346, :db_insert_placeholder_347, :db_insert_placeholder_348, :db_insert_placeholder_349, :db_insert_placeholder_350, :db_insert_placeholder_351, :db_insert_placeholder_352, :db_insert_placeholder_353, :db_insert_placeholder_354, :db_insert_placeholder_355, :db_insert_placeholder_356, :db_insert_placeholder_357, :db_insert_placeholder_358, :db_insert_placeholder_359, :db_insert_placeholder_360, :db_insert_placeholder_361, :db_insert_placeholder_362, :db_insert_placeholder_363, :db_insert_placeholder_364, :db_insert_placeholder_365, :db_insert_placeholder_366, :db_insert_placeholder_367), (:db_insert_placeholder_368, :db_insert_placeholder_369, :db_insert_placeholder_370, :db_insert_placeholder_371, :db_insert_placeholder_372, :db_insert_placeholder_373, :db_insert_placeholder_374, :db_insert_placeholder_375, :db_insert_placeholder_376, :db_insert_placeholder_377, :db_insert_placeholder_378, :db_insert_placeholder_379, :db_insert_placeholder_380, :db_insert_placeholder_381, :db_insert_placeholder_382, :db_insert_placeholder_383, :db_insert_placeholder_384, :db_insert_placeholder_385, :db_insert_placeholder_386, :db_insert_placeholder_387, :db_insert_placeholder_388, :db_insert_placeholder_389, :db_insert_placeholder_390), (:db_insert_placeholder_391, :db_insert_placeholder_392, :db_insert_placeholder_393, :db_insert_placeholder_394, :db_insert_placeholder_395, :db_insert_placeholder_396, :db_insert_placeholder_397, :db_insert_placeholder_398, :db_insert_placeholder_399, :db_insert_placeholder_400, :db_insert_placeholder_401, :db_insert_placeholder_402, :db_insert_placeholder_403, :db_insert_placeholder_404, :db_insert_placeholder_405, :db_insert_placeholder_406, :db_insert_placeholder_407, :db_insert_placeholder_408, :db_insert_placeholder_409, :db_insert_placeholder_410, :db_insert_placeholder_411, :db_insert_placeholder_412, :db_insert_placeholder_413), (:db_insert_placeholder_414, :db_insert_placeholder_415, :db_insert_placeholder_416, :db_insert_placeholder_417, :db_insert_placeholder_418, :db_insert_placeholder_419, :db_insert_placeholder_420, :db_insert_placeholder_421, :db_insert_placeholder_422, :db_insert_placeholder_423, :db_insert_placeholder_424, :db_insert_placeholder_425, :db_insert_placeholder_426, :db_insert_placeholder_427, :db_insert_placeholder_428, :db_insert_placeholder_429, :db_insert_placeholder_430, :db_insert_placeholder_431, :db_insert_placeholder_432, :db_insert_placeholder_433, :db_insert_placeholder_434, :db_insert_placeholder_435, :db_insert_placeholder_436), (:db_insert_placeholder_437, :db_insert_placeholder_438, :db_insert_placeholder_439, :db_insert_placeholder_440, :db_insert_placeholder_441, :db_insert_placeholder_442, :db_insert_placeholder_443, :db_insert_placeholder_444, :db_insert_placeholder_445, :db_insert_placeholder_446, :db_insert_placeholder_447, :db_insert_placeholder_448, :db_insert_placeholder_449, :db_insert_placeholder_450, :db_insert_placeholder_451, :db_insert_placeholder_452, :db_insert_placeholder_453, :db_insert_placeholder_454, :db_insert_placeholder_455, :db_insert_placeholder_456, :db_insert_placeholder_457, :db_insert_placeholder_458, :db_insert_placeholder_459); Array ( ) in _menu_router_save() (line 3838 of /home/nithu/public_html/ps2html.org/public/includes/menu.inc).
| Comment | File | Size | Author |
|---|---|---|---|
| #3 | auto_entitylabel-weightfix.patch | 1 KB | stefan.r |
Comments
Comment #1
stefan.r commentedYou are trying to assign a weight of 2.1 to a menu_router item. Weight only accepts integers.
Comment #2
nithinkolekar commentedI am not setting anything like weight manually, this is only happening with
Postgresql 9.0.1
Fresh install of drupal 7.34.
Entity API 7.x-1.5
Not a big issue as I am testing it in development for simple project and switched to mysql. But curious about how many modules are still affected by #1003788: PostgreSQL: PDOException:Invalid text representation when attempting to load an entity with a string or non-scalar ID or is it just me..
Comment #3
stefan.r commentedNo, this is another issue as this is about the weight, not the ID. The attached patch should fix it.
Comment #4
nithinkolekar commentedSorry, I should have checked the code for this minor issue :( . I thought just because it working fine with mysql , and got error with postgres and ggl landed me to other issue as no one came through this error before.
Anyway tested the patch with postgersql and worked fine. Also changing title for future readers/search bots.
As for issue status I don't know what to set fixed or RTBC.
update: it should be committed, otherwise this module wouldn't work with postgresql
Comment #5
stefan.r commentedRTBC is fine
Comment #6
jweowu commentedComment #7
Timusan commentedCan confirm the provided patch works.
MySQL does indeed silently accept a float in an integer column. PostgreSQL, on the other hand, luckily complaints about such issues. Good catch and glad there is a clear patch.
This issue does not only mess with this module, but seriously throws of the menu system. Every subsequently installed module will fail to get its path(s) inserted correctly into the database and thus fail to be setup correctly. When you do not use Automatic Entity Label directly (install a few modules afterwards and try to configure them) this can cause very spooky issues with your *whole* install and you do not mentally link them to this module directly.
So, for PostgreSQL users, this is quite a critical issue as this bug sits in a stable (!) release of this module.
Maybe add future tests for PostgreSQL as well?
Comment #8
nithinkolekar commentedComment #9
stefan.r commentedComment #10
Timusan commentedI did some more tests on several development installs and made heavy use of Automatic Entity Label after applying the patch. I can (again) confirm this solves all the mentioned issues and the module works as designed under PostgreSQL.
Again, thanks for the patch and for bumping up the priority. I know the PostgreSQL community is minor within Drupal, yet attention to both RDBMSs from a module maker's perspective is highly appreciated! And, as you can see, using PostgreSQL does have benefits such as pointing out these issues which otherwise are difficult to surface due to MySQL's non-standard behavior.
Comment #11
nithinkolekar commented@Timusan
Shall they have to disable/uninstall those modules and then re-install after applying patch?. This might be helpful for future readers if you share your usage experience.
Comment #13
bforchhammer commentedThanks for the patch and testing! I have committed #3 to 7.x-1.x-dev. :)
Comment #14
Timusan commented@nithinkolekar
No, a simple cache clearing was enough to get everything going again.
The pre-patched state of this module's menu hook simply generated invalid SQL which prevented this hook and all subsequent hooks from being inserted. Thus, applying the patch (making for legal SQL) and forcing the revisiting of all the menu hooks in all modules (by flushing caches) should process everything neatly and insert later-added module menu hooks as well.
Comment #16
rsutaria commentedThank you for this patch. I'm using Durpal with PostGIS and this has been of great help to me too!
Comment #17
badrange commentedJust wanted to chime in and say that this fix also helped me in this project where we use a MS SQL server. Thanks!
Before trying out the dev release, I got this error message while enabling the module:
PDOException: SQLSTATE[25000]: [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Cannot roll back savepoint_1. No transaction or savepoint of that name was found.: ROLLBACK TO SAVEPOINT savepoint_1; Array ( ) in _menu_router_save() (line 3869 of C:\dev\WWW\code\build-gradle\www\includes\menu.inc).Maybe a new release would be in order for the small percentage of sites that don't run on MySQL?