<!--- Verify first that your issue is not already reported on GitHub -->
<!--- Also test if the latest release and devel branch are affected too -->
<!--- Complete *all* sections as described, this form is processed automatically -->

##### SUMMARY
Line 556 in the current file `ansible/modules/database/postgresql/postgresql_db.py` references an exception LibraryError, that doesn't exist. This leads to the code to stop at that point instead of showing the actual error. The error message is `AttributeError: 'module' object has no attribute 'LibraryError`. This line seems to be new since 2.9 version. It is still existent in the current master code.

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
postgresql

##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```paste below
ansible 2.9.1
  config file = /home/gerhard/projects/localserver/ansible.cfg
  configured module search path = ['/home/gerhard/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /home/gerhard/projects/localserver/ansible/lib/python3.7/site-packages/ansible
  executable location = ansible/bin/ansible
  python version = 3.7.5 (default, Oct 27 2019, 15:43:29) [GCC 9.2.1 20191022]
```
 but the line is also in the current HEAD.

##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
```paste below
ALLOW_WORLD_READABLE_TMPFILES(/home/gerhard/projects/localserver/ansible.cfg) = True
DEFAULT_BECOME(/home/gerhard/projects/localserver/ansible.cfg) = True
DEFAULT_BECOME_ASK_PASS(/home/gerhard/projects/localserver/ansible.cfg) = False
DEFAULT_BECOME_USER(/home/gerhard/projects/localserver/ansible.cfg) = root
DEFAULT_REMOTE_USER(/home/gerhard/projects/localserver/ansible.cfg) = gerhard
DEFAULT_ROLES_PATH(/home/gerhard/projects/localserver/ansible.cfg) = ['/home/gerhard/projects/localserver/external/roles']
```

##### OS / ENVIRONMENT
<!--- Provide all relevant information below, e.g. target OS versions, network device firmware, etc. -->
Linux


##### STEPS TO REPRODUCE
<!--- Describe exactly how to reproduce the problem, using a minimal test-case -->

<!--- Paste example playbooks or commands between quotes below -->
```yaml
- name: Create database
  postgresql_db:
    name: testdatabase
    state: present
```

<!--- HINT: You can paste gist.github.com links for larger files -->

##### EXPECTED RESULTS
<!--- Describe what you expected to happen when running the steps above -->
The database should be created. For some reasons there seems to be a configuration error though, so access to the database doesn't seem to work. I would now expect an error message regarding authentication to the database.


##### ACTUAL RESULTS
<!--- Describe what actually happened. If possible run with extra verbosity (-vvvv) -->

<!--- Paste verbatim command output between quotes -->
```paste below
failed: [planet.jerri.home] (item=mayanedms) => {
    "ansible_loop_var": "item",
    "changed": false,
    "item": "mayanedms",
    "module_stderr": "Shared connection to planet.jerri.home closed.\r\n",
    "module_stdout": "\r\nTraceback (most recent call last):\r\n  File \"/home/gerhard/.ansible/tmp/ansible-tmp-1574545223.9061017-167794219070878/AnsiballZ_postgresql_db.py\", line 102, in <module>\r\n    _ansiballz_main()\r\n  File \"/home/gerhard/.ansible/tmp/ansible-tmp-1574545223.9061017-167794219070878/AnsiballZ_postgresql_db.py\", line 94, in _ansiballz_main\r\n    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\r\n  File \"/home/gerhard/.ansible/tmp/ansible-tmp-1574545223.9061017-167794219070878/AnsiballZ_postgresql_db.py\", line 40, in invoke_module\r\n    runpy.run_module(mod_name='ansible.modules.database.postgresql.postgresql_db', init_globals=None, run_name='__main__', alter_sys=True)\r\n  File \"/usr/lib/python2.7/runpy.py\", line 188, in run_module\r\n    fname, loader, pkg_name)\r\n  File \"/usr/lib/python2.7/runpy.py\", line 82, in _run_module_code\r\n    mod_name, mod_fname, mod_loader, pkg_name)\r\n  File \"/usr/lib/python2.7/runpy.py\", line 72, in _run_code\r\n    exec code in run_globals\r\n  File \"/tmp/ansible_postgresql_db_payload_7L6Qx4/ansible_postgresql_db_payload.zip/ansible/modules/database/postgresql/postgresql_db.py\", line 611, in <module>\r\n  File \"/tmp/ansible_postgresql_db_payload_7L6Qx4/ansible_postgresql_db_payload.zip/ansible/modules/database/postgresql/postgresql_db.py\", line 550, in main\r\nAttributeError: 'module' object has no attribute 'LibraryError'\r\n",
    "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
    "rc": 1
}
```

try:
                changed = db_delete(cursor, db)
            except SQLParseError as e:
                module.fail_json(msg=to_native(e), exception=traceback.format_exc())
        elif state == "present":
            try:
                changed = db_create(cursor, db, owner, template, encoding, lc_collate, lc_ctype, conn_limit, tablespace)
            except SQLParseError as e:
                module.fail_json(msg=to_native(e), exception=traceback.format_exc())
        elif state in ("dump", "restore"):
            method = state == "dump" and db_dump or db_restore
            try:
                rc, stdout, stderr, cmd = method(module, target, target_opts, db, **kw)
                if rc != 0:
                    module.fail_json(msg=stderr, stdout=stdout, rc=rc, cmd=cmd)
                else:
                    module.exit_json(changed=True, msg=stdout, stderr=stderr, rc=rc, cmd=cmd)
            except SQLParseError as e:
                module.fail_json(msg=to_native(e), exception=traceback.format_exc())
    except NotSupportedError as e:
        module.fail_json(msg=to_native(e), exception=traceback.format_exc())
    except SystemExit:
        
        raise
    except Exception as e:
        module.fail_json(msg="Database query failed: %s" % to_native(e), exception=traceback.format_exc())
    module.exit_json(changed=changed, db=db)
if __name__ == '__main__':
    main()