When installing or migrating from KnowledgeTree (Document Management System) version 3.0.6 to 3.0.7.2 on CentOS using the KnowledgeTree universal installer one might run into the following issue:

None of the Scheduler’s tasks get executed correctly.

All the tasks exit with the following errorcode:

[db_error: message="DB Error: extension not found" code=-25 mode=return level=notice prefix="" info="Array"] 

You can test this manually:

	$ /usr/local/zend/bin/php /usr/share/knowledgetree-ce/search2/bin/cronDocumentProcessor.php
	[db_error: message="DB Error: extension not found" code=-25 mode=return level=notice prefix="" info="Array"]
	

The problem here is that the variable LD_LIBRARY_PATH is not set correctly, causing the zend php binary not being able to find the correct database module. Let’s try setting this variable manually:

	$ export LD_LIBRARY_PATH=/usr/local/zend/lib/
	$ /usr/local/zend/bin/php /usr/share/knowledgetree-ce/search2/bin/cronDocumentProcessor.php
	

Fixed! Now, this only fixes the problem in our current shell, how do we make this fix persistent system wide? By creating a file in /etc/profile.d/ setting the variable system wide:

	$ vi /etc/profile.d/kt.sh
	

With the contents:

	export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/zend/lib/
	

Now, lets make this file executable:

	$ chmod +x /etc/profile.d/kt.sh
	

Now, all that’s left to do is restart KnowledgeTree so that it reads the new content of the LD_LIBRARY_PATH variable and our problem is solved.

Bug reported to KnowledgeTree: http://issues.knowledgetree.com/browse/KTS-4576