Skip to content

Commit 05d0ee6

Browse files
Fix storing lastResult correctly
Improvements
2 parents b28552a + b1a4409 commit 05d0ee6

2 files changed

Lines changed: 9 additions & 6 deletions

File tree

src/jsoniq/sequence.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,24 +42,28 @@ def first(self):
4242
return tuple(self.getFirstItemsAsList(self._rumblesession.getRumbleConf().getResultSizeCap()))
4343

4444
def json(self):
45-
return tuple([json.loads(l.serializeAsJSON()) for l in self._jsequence.getAsList()])
45+
self._rumblesession.lastResult = tuple([json.loads(l.serializeAsJSON()) for l in self._jsequence.getAsList()])
46+
return self._rumblesession.lastResult
4647

4748
def rdd(self):
4849
rdd = self._jsequence.getAsPickledStringRDD()
4950
rdd = RDD(rdd, self._sparkcontext)
50-
return rdd.map(lambda l: json.loads(l))
51+
self._rumblesession.lastResult = rdd.map(lambda l: json.loads(l))
52+
return self._rumblesession.lastResult
5153

5254
def df(self):
5355
if (not "DataFrame" in self._jsequence.availableOutputs()):
5456
sys.stderr.write(self.schema_str)
5557
return None
56-
return DataFrame(self._jsequence.getAsDataFrame(), self._sparksession)
58+
self._rumblesession.lastResult = DataFrame(self._jsequence.getAsDataFrame(), self._sparksession)
59+
return self._rumblesession.lastResult
5760

5861
def pdf(self):
5962
if (not "DataFrame" in self._jsequence.availableOutputs()):
6063
sys.stderr.write(self.schema_str)
6164
return None
62-
return self.df().toPandas()
65+
self._rumblesession.lastResult = self.df().toPandas()
66+
return self._rumblesession.lastResult
6367

6468
def count(self):
6569
return self._jsequence.count()

src/jsoniq/session.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -200,8 +200,7 @@ def bindDataFrameAsVariable(self, name: str, df):
200200

201201
def jsoniq(self, str):
202202
sequence = self._jrumblesession.runQuery(str);
203-
self.lastResult = SequenceOfItems(sequence, self);
204-
return self.lastResult;
203+
return SequenceOfItems(sequence, self);
205204

206205
def __getattr__(self, item):
207206
return getattr(self._sparksession, item)

0 commit comments

Comments
 (0)