Awesome Bar BUG in v10.1.18 - I give up. Let it stay broken

Just spun up a new server and loaded ERPNext (production)

Versions:
ERPNext - 10.1.18
Frappe - 10.1.16

After passing through system setup and configuration script, I noticed the Setup icon was not on the desktop so I went to the Awesome Bar and typed in Setup then pressed the Enter key. The following error was displayed:


.
.
On any previous version, typing anything into the awesome bar and pressing Enter key would display everything the system knew about the key word you entered. Now it just seems to blow up.

Here is the complete text of the error in the picture:


Traceback (most recent call last):
File “/home/erp_jmi/frappe-bench/apps/frappe/frappe/app.py”, line 62, in application
response = frappe.handler.handle()
File “/home/erp_jmi/frappe-bench/apps/frappe/frappe/handler.py”, line 22, in handle
data = execute_cmd(cmd)
File “/home/erp_jmi/frappe-bench/apps/frappe/frappe/handler.py”, line 53, in execute_cmd
return frappe.call(method, **frappe.form_dict)
File “/home/erp_jmi/frappe-bench/apps/frappe/frappe/init.py”, line 939, in call
return fn(*args, **newargs)
File “/home/erp_jmi/frappe-bench/apps/frappe/frappe/utils/help.py”, line 32, in get_help
return HelpDatabase().search(text)
File “/home/erp_jmi/frappe-bench/apps/frappe/frappe/utils/help.py”, line 106, in search
select title, intro, path from help where match(content) against (%s) limit 10’‘’, (‘%’+words+‘%’, words))
File “/home/erp_jmi/frappe-bench/apps/frappe/frappe/database.py”, line 166, in sql
self._cursor.execute(query, values)
File “/home/erp_jmi/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/cursors.py”, line 165, in execute
result = self._query(query)
File “/home/erp_jmi/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/cursors.py”, line 321, in _query
conn.query(q)
File “/home/erp_jmi/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/connections.py”, line 860, in query
self._affected_rows = self._read_query_result(unbuffered=unbuffered)
File “/home/erp_jmi/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/connections.py”, line 1061, in _read_query_result
result.read()
File “/home/erp_jmi/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/connections.py”, line 1349, in read
first_packet = self.connection._read_packet()
File “/home/erp_jmi/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/connections.py”, line 1018, in _read_packet
packet.check_error()
File “/home/erp_jmi/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/connections.py”, line 384, in check_error
err.raise_mysql_exception(self._data)
File “/home/erp_jmi/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/err.py”, line 107, in raise_mysql_exception
raise errorclass(errno, errval)
ProgrammingError: (1146, u"Table ‘1bd3e0294da19198.help’ doesn’t exist")


.
.
The Awesome Bar is probably the single most important element of ERPNext for navigational purposes. We cannot afford for it to be broken.

Issue has been submitted to github. I hope I did that right…

https://github.com/frappe/erpnext/issues/13463

BKM

1 Like

Hi @bkm,

thanks for reporting this. However, I tried to reproduce this on a system which is on

ERPNext: v10.1.18 (master)
Frappe Framework: v10.1.16 (master)

and had no issues with the search bar. Can you please try to run

 $ bench --site [sitename] rebuild-global-search
 $ bench setup-help

and see if this helps? (The error indictaes a missing tabHelp) Hope this helps.

Your fix of rebuilding the global search and re-syncing the help database did work.

However, something must be wrong in the install.py script because I spun up 4 servers on Ubuntu 16.04 on the Google Cloud Platform and all 4 servers have the same error. I have run your fix on 2 of them and they work now, but all 4 installs suffered the same condition.

Did you install a fresh production server to test this?

If not, could you do that and report back?

It would be good to know if it happens with all new production installs.

BKM

1 Like

I have seen this error which seems to be quite common across many versions. I think it is an exception not caught (something failed) BUT not so gracefully.

Well, I have several iterations of V10 running and this is the first time I could not type Setup into the awesome bar and press the Enter key.

The important thing to note her is that the Enter key is what triggers the error. Otherwise you will still get all of the selection possibilities to show up under the awesome bar and you can select from them.

However, in may cases there are too many selections and you have to continue your search to get all the possibilities to appear. This is done by pressing the Enter key a a word or partial word is typed.

By the way, this works well on v10.0.14 which I use in many locations already. This is the first time I noticed this kind of response.

BKM

.
.
OK. I have now gone outside of my Google Cloud account and installed the same version on one of my dormant paid servers at InterServer. This is a VPS server with 6gb of memory and plenty of disk space. It is configured with the latest Ubuntu 16.04

This now confirms the error also appeared on this new server. I just went through the production setup again using the following command:

sudo python install.py --production --user bkm

Once installed, I logged in as administrator and went through the initial configuration. I immediately went to the Awesome Bar, type in the word setup, and pressed the Enter key.

I got the same error as I reported at the top of this post. That is a CONFIRMED bug that happens with any new production installs. It doen’t matter what you type into the Awesome Bar, as long as you press the Enter key to start the search it breaks.

Please, someone on the developer side, take a look at this. We cannot afford to have the most valuable tool in the system be broken!

BKM

To Sync help with database instance, you need to execute the bench migrate command.

Thanks
Navdeep

Thanks for the extra input. Mine worked without having to do the bench migrate.

My point for this original post was to get the comunity developers to fix the problem at the install.py script level. Either the install script or one of the functions it calls is broken. The help database is evidently never created (or created and never added) during the install process. It doesn’t matter what you type into the awesome bar, it fails when you press enter key to search.

I just just don’t like leaving known broken issues on the table for the brand new users to stumble over and become afraid of an otherwise great program. The is even more true for a version that is about to be retired (v10) and replaced with the next new set of technologies (v11). We would hope the current version is mature enough to not have such silly issues.

BKM

1 Like

I can confirm to have the same issue (search something in awesome bar after clean install results in ProgrammingError: (1146, u"Table '1bd3e0294da19198.help' doesn't exist") using a vanilla Debian 8.7 amd64 on the easy install production version with ERPNext: v10.1.18 (master), Frappe Framework: v10.1.16 (master). There were no errors during the setup script. And while this can be easily recovered using

$ bench setup-help

I fully agree with @bkm that this leaves a bad impression with new people trying the system and should be addressed quickly.

1 Like

Ok, now I am really stuck.

I created a DNS Multitenant server and I get the same error now of all the tenants sites and the fix by @lasalesi doesn’t seem to work for those sites. So I have no way of getting the help database back for the tenant sites at this point.

We need attention to this issue still. :confounded:

BKM

Hi @bkm,

this is strange. When does the error exactly occur? After creating the new site (and affects all others)?

Have you tried

$ bench --site (new-site) setup-help

Yes. That is why I commented that your 2 command fix doesn’t work for the new tenants of a multitenant site.

I am currently rebuilding the server again from the OS all the way up again. It should be ready in about 45 min. I will document the steps from install.py to error with tenants.

BKM

Okay, I must have had something else wrong with my installation earlier. After tearing it down and rebuilding it 4 times I finally got the correct sequence of tasks to set this up and have the Awesome Bar work properly on all of the tenant sites. Your commands fix it as long as it is done correctly for each tenant site.

This is still an issue with the install.py or one of the scripts that it calls. New production installations will all suffer with this.

BKM

Just setup a new ERPNext server again today, and this BUG is still there!!

BKM

Here we are almost a month later (24 days) and the ERPNext version has changed several times.

The problem was never fixed!!

Hard to believe. Only one person bothered to look at it in the github issue and he didn’t even bother to follow the instructions to see the bug. He just said “Works fine in my test account.” and never looked back.

I cannot believe that the developers are okay with allowing such a thing to still exist. It is stuff like this that causes new potential customer to go to competing programs to get their ERP services. I mean who would allow a bug that crashes the help feature to stay for so long and just ignore it?!?

What kind of impression does that leave on first time clients trying out ERPNext?

When I start this thread the versions were:

Versions:
ERPNext - 10.1.18
Frappe - 10.1.16

An now here we are at versions:

ERPNext - 10.1.23 master
Frappe - 10.1.24 master

Yet the bug still persists. I just spun up a fresh server this morning and something this simple is still hanging out there to interfere with potential new ERP clients.

I would not be so perturbed if I had only posted here about this. But I followed the correct portocol and I created a github issue (see link at top of thread) so it would be properly noted and it still gets ignored. THAT is what is so upsetting about it. All I ever want to do is help tidy up the things that get in the way of first adopters of this fine system. If the developer team doesn’t seem to care about such things, why should new adopters bother with us?!? It doesn’t set a good first impression.

Amazing…

BKM

Hello @bkm

I understand your frustration. But looking at it from Frappe’s side there are new bug reports submitted several times a day that they need to check out. And many times they simply cannot reproduce them on their report. They also have a duty to look after their paying customers too before other general users which is understandable.

I think it’s a question of manpower to go through all these Github Issues and sometimes, like many things in life there is not enough time or resource to do everything as you would wish to.

What I suggest you try is to involve the community and the employees of Frappe that are supported by the Foundation, ie paying members of the community. If you send a quick polite message @achillesrasquinha i’m sure he may be able to take a quick look. Or at least point you in the direction of someone who can. The Foundation team who are employed by Frappe but paid for by the Foundation have a remit to improve the quality of the code as well as adding new features.

Also please make a quick animated gif of the issue. It’s not hard - I use Peek which is so easy to use and well maintained. Using these small videos does let the Devs understand more quickly than words can sometimes.

Good luck !

Now I have to laugh out loud. That is the same thing the developer on github said to do, but I get the feeling they were just to lazy to read the instructions.

How do you make a GIF of installing ERPNext?
How do make a GIF of me pressing the ENTER key?!?

Come on… you can’t be serious?

The problem does NOT occur with a mouse click that you would be able to see in a stupid GIF. It requires a pressing of the ENTER key on the keyboard. That is why I think this GIF nonsense is just a way to get out of actually reading the instructions.

I really do not understand everyone’s fascination with these ridiculous GIF’s when they cannot possibly show you nearly as much as simply reading and following instructions.

If a developer is not willing to look at a problem just because it is not possible to make a GIF of the ENTER key, then that speaks volumes about either their skill level, or their laziness. Either way it does not set well with me.

  • I can see the point of being polite to the foundation if I ask them to look into it.
  • I can see the point of asking nicely for any effort.

What I cannot see is this nonsense of GIFs being able to tell the whole story. Why try to make a GIF of something that is impossible?!?

When 3 little instructions do the job best!

  • Install a fresh ERPNext production server using install.py
  • Complete the setup wizard.
  • Type “setup” into the awesome bar and press ENTER key

How do you make a stupid GIF for this?!?

The problem must be in the install.py script. Something is being left out.

BKM

Let go of the GIF bone buddy :slight_smile: Take suggestions meaningful to you and ignore the rest.

1 Like

I give up…

Let it stay broken.

Moderator please close the thread. It is not worth keeping open.

BKM

It seems like this would have to be a problem with setup.py. This thread was started on March 31st, and there was an update to setup.py on March 22nd by @anand
@anand Do you know of anything on your update that could have caused this?

1 Like