Skip to content

Commit 2c6ee28

Browse files
talekRendanic
authored andcommitted
Use byte streams for sqlplus process communication
1 parent a14231f commit 2c6ee28

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
---
2+
bugfixes:
3+
- "oracle_sqldba module: Use byte streams for sqlplus process communication."

plugins/modules/oracle_sqldba

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -245,7 +245,7 @@ def run_sql(sql, username, password, pdb):
245245
if timeout > 0:
246246
t = Timer(timeout, kill_process)
247247
t.start()
248-
[sout, serr] = sql_process.communicate(input = sql_cmd)
248+
[sout, serr] = sql_process.communicate(input = sql_cmd.encode())
249249
except Exception as e:
250250
err_msg += 'Could not call sqlplus. %s. called: %s.' % (to_native(e), " ".join(sqlplus()))
251251
return "[ERR]"
@@ -256,13 +256,13 @@ def run_sql(sql, username, password, pdb):
256256
err_msg += "called: %s\nreturncode: %d\nresult: %s. stderr = %s." % (sql_cmd, sql_process.returncode, sout, serr)
257257
return "[ERR]"
258258
sqlerr_pat = re.compile("^(ORA|TNS|SP2)-[0-9]+", re.MULTILINE)
259-
sqlplus_err = sqlerr_pat.search(sout)
259+
sqlplus_err = sqlerr_pat.search(sout.decode())
260260
if sqlplus_err:
261261
err_msg += "[ERR] sqlplus: %s\nERR Code: %s.\n" % (sql_cmd, sqlplus_err.group())
262262
return "[ERR]\n%s\n" % sout.strip()
263263

264264
changed = True
265-
return sout.strip()
265+
return sout.decode().strip()
266266

267267

268268
def check_creates_sql(sql, scope):

0 commit comments

Comments
 (0)