From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Schulte Subject: Re: Bug: [Babel] sqlite if: End of file during parsing Date: Wed, 15 Feb 2012 10:59:25 -0700 Message-ID: <874nust1tu.fsf@gmx.com> References: Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([140.186.70.92]:35582) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rxj8j-0006Md-AE for emacs-orgmode@gnu.org; Wed, 15 Feb 2012 12:59:43 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Rxj8c-0004Ci-Pz for emacs-orgmode@gnu.org; Wed, 15 Feb 2012 12:59:36 -0500 Received: from mailout-us.gmx.com ([74.208.5.67]:55013 helo=mailout-us.mail.com) by eggs.gnu.org with smtp (Exim 4.71) (envelope-from ) id 1Rxj8c-0004CO-IM for emacs-orgmode@gnu.org; Wed, 15 Feb 2012 12:59:30 -0500 In-Reply-To: (Philip Rooke's message of "Wed, 15 Feb 2012 16:37:31 +0000") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Philip Rooke Cc: emacs-orgmode@gnu.org Does the following work with the addition of ":results scalar"? #+begin_src sqlite :db ob-bug.db :results output scalar select f_name || " " || l_name from person; #+end_src If so could you send me the contents of the results block? It appears that ob-sqlite is choking trying to parse the results into a table. Thanks, Philip Rooke writes: > Remember to cover the basics, that is, what you expected to happen and > what in fact did happen. You don't know how to make a good report? See > > http://orgmode.org/manual/Feedback.html#Feedback > > Your bug report will be posted to the Org-mode mailing list. > ------------------------------------------------------------------------ > (Warning, this is the first time I have tried to use org babel and so > there could be user error in the following. Sorry if that is the > case.) > > Starting from emacs -Q evaluate the following code blocks in > succession. The #+results: blocks below are what I am seeing on my > system. > > #+begin_src emacs-lisp :results silent > (require 'org) > (require 'org-install) > (org-babel-do-load-languages > 'org-babel-load-languages > '((sqlite . t) > (sh . t))) > #+end_src > > The next block will create a small 2k file, ob-bug.db, in the current > directory. You will probably want to delete later. > > #+begin_src sqlite :db ob-bug.db :results silent > drop table if exists person; > create table person (f_name text, l_name text); > insert into person (f_name, l_name) values ('Joe', 'Bloggs'); > #+end_src > > Check this worked: > > #+begin_src sqlite :db ob-bug.db :results output > select * from person; > #+end_src > > #+results: > | Joe | Bloggs | > > Formatting the name using the sqlite string concat operator || > also works as expected: > > #+begin_src sqlite :db ob-bug.db :results output > select f_name || " " || l_name from person; > #+end_src > > #+results: > : Joe Bloggs > > Add a second line of data: > > #+begin_src sqlite :db ob-bug.db :results output silent > insert into person (f_name, l_name) values ('Fred', 'Smith'); > #+end_src > > Repeat the last two queries. > #+begin_src sqlite :db ob-bug.db :results output > select * from person; > #+end_src > > #+results: > | Joe | Bloggs | > | Fred | Smith | > > but... > > #+begin_src sqlite :db ob-bug.db :results output > select f_name || " " || l_name from person; > #+end_src > > errors with the unhelpful message "if: End of file during parsing" > > Although the query works from a shell: > > #+begin_src sh :results output > sqlite3 ob-bug.db 'select f_name || " " || l_name from person;' > #+end_src > > #+results: > : Joe Bloggs > : Fred Smith > > Remove the debug database file if you want: > > #+begin_src sh :results silent > rm ob-bug.db > #+end_src > > (toggle-debug-on-error) offers no information and so I have tried edebug > stepping through the code. It seems that the error is happening in the > function org-babel-read at line 2335 when it tries to evaluate > (read "\"Joe"). > > The query at first ran successfully when there was just one line of > data in the database and stepping through that query shows that the > string being passed through org-babel-read is "Joe Bloggs" rather than > "\"Joe" and therefore follows a different code path at line 2334. > > At this point I am stuck. > > Phil > > Emacs : GNU Emacs 24.0.92.1 (i386-apple-darwin10.8.0, NS apple-appkit-1038.36) > of 2012-01-28 on bo > Package: Org-mode version 7.8.03 (release_7.8.03.346.gf9c4) > > current state: > ============== > (setq > org-export-preprocess-before-selecting-backend-code-hook '(org-beamer-select-beamer-code) > org-tab-first-hook '(org-hide-block-toggle-maybe org-src-native-tab-command-maybe org-babel-hide-result-toggle-maybe) > org-speed-command-hook '(org-speed-command-default-hook org-babel-speed-command-hook) > org-occur-hook '(org-first-headline-recenter) > org-metaup-hook '(org-babel-load-in-session-maybe) > org-export-preprocess-before-normalizing-links-hook '(org-remove-file-link-modifiers) > org-confirm-shell-link-function 'yes-or-no-p > org-export-latex-final-hook '(org-beamer-amend-header org-beamer-fix-toc org-beamer-auto-fragile-frames org-beamer-place-default-actions-for-lists) > org-export-latex-after-initial-vars-hook '(org-beamer-after-initial-vars) > org-after-todo-state-change-hook '(org-clock-out-if-current) > org-src-mode-hook '(org-src-babel-configure-edit-buffer org-src-mode-configure-edit-buffer) > org-agenda-before-write-hook '(org-agenda-add-entry-text) > org-babel-pre-tangle-hook '(save-buffer) > org-mode-hook '((lambda nil (org-add-hook (quote change-major-mode-hook) (quote org-show-block-all) (quote append) (quote local))) > (lambda nil (org-add-hook (quote change-major-mode-hook) (quote org-babel-show-result-all) (quote append) (quote local))) > org-babel-result-hide-spec org-babel-hide-all-hashes) > org-ctrl-c-ctrl-c-hook '(org-babel-hash-at-point org-babel-execute-safely-maybe) > org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers org-cycle-show-empty-lines org-optimize-window-after-visibility-change) > org-export-latex-format-toc-function 'org-export-latex-format-toc-default > org-export-blocks '((src org-babel-exp-src-block nil) (export-comment org-export-blocks-format-comment t) (ditaa org-export-blocks-format-ditaa nil) > (dot org-export-blocks-format-dot nil)) > org-export-first-hook '(org-beamer-initialize-open-trackers) > org-export-interblocks '((src org-babel-exp-non-block-elements)) > org-confirm-elisp-link-function 'yes-or-no-p > org-metadown-hook '(org-babel-pop-to-session-maybe) > org-babel-load-languages '((sqlite . t) (sh . t)) > org-clock-out-hook '(org-clock-remove-empty-clock-drawer) > ) > -- Eric Schulte http://cs.unm.edu/~eschulte/