Hi Aaron,

Would you mind sharing the code for flushing DLLs? This is a problem that 
others working with single cells and I have faced.

Better yet would anyone know of code that would allow unused DLL to be 
identified and unloaded? I suspect not as it would require keeping track of the 
dependency tree of your current environment but I’m hopeful.

Kind regards,
Shian Su

> On 19 Sep 2017, at 12:30 pm, Aaron Lun <a...@wehi.edu.au> wrote:
> 
> Well, inertia won out in the end, and so I've just moved a whole stack of 
> packages into "Suggests" for now. This is probably not a sustainable solution 
> as the workflow can potentially get larger over time; I would prefer to have 
> some formal support for splitting up the workflow into modules that can be 
> independently installed.
> 
> -Aaron
> ________________________________
> From: Vincent Carey <st...@channing.harvard.edu>
> Sent: Saturday, 16 September 2017 10:08:13 PM
> To: Aaron Lun
> Cc: Martin Morgan; bioc-devel@r-project.org
> Subject: Re: [Bioc-devel] [Untrusted Server]Re: strange error in Jenkins 
> build forsingleCellWorkflow
> 
> IMHO the pedagogic value of a unified document that treats a topic thoroughly
> is quite high.  Building the whole workflow on an arbitrary user's system 
> seems to
> me to be a lower priority.  Thus using the environment variable in the build 
> system
> to avoid this limit seems an appropriate solution.
> 
> On Sat, Sep 16, 2017 at 7:43 AM, Aaron Lun 
> <a...@wehi.edu.au<mailto:a...@wehi.edu.au>> wrote:
> Thanks Martin. Yes, it's quite unfortunate that scater drags in dplyr and 
> ggplot2, which - combined with Bioconductor's core packages - already puts us 
> pretty close to the limit without doing anything else!
> 
> 
> A solution might be to split my workflow into self-contained components, each 
> of which can become its own workflow package (e.g., simpleSingleCell1, 
> simpleSingleCell2, simpleSingleCell3 and so on). This should avoid all of the 
> problems and our associated hacks.
> 
> 
> I'm happy to do this, but is it possible for the website to indicate that 
> there is a connection between the component workflows? For example, the link 
> that ordinarily goes to the compiled workflow could instead go to an indexing 
> page, which contains links to individual component workflows.
> 
> 
> -Aaron
> 
> 
> ________________________________
> From: Martin Morgan 
> <martin.mor...@roswellpark.org<mailto:martin.mor...@roswellpark.org>>
> Sent: Saturday, 16 September 2017 8:18:09 PM
> To: Aaron Lun; bioc-devel@r-project.org<mailto:bioc-devel@r-project.org>
> Subject: Re: [Bioc-devel] [Untrusted Server]Re: strange error in Jenkins 
> build forsingleCellWorkflow
> 
> On 09/16/2017 01:53 AM, Aaron Lun wrote:
>> Bumping this rather old thread. To re-iterate, I'm updating my 
>> simpleSingleCell workflow and I'm running into R's DLL limit. I've added a 
>> code block halfway through the workflow that unloads all DLLs and cleans 
>> them out, and this works fine during compilation on my local machine.
>> 
>> 
>> However, it seems that the BioC workflow builder uses a pre-processing step 
>> whereby it first tries to load all packages contained within library() 
>> calls. This hits the DLL limit as it doesn't execute the protective code 
>> block, which defeats the purpose of all my fiddling in the first place.
>> 
>> 
>> What options are there? I'm happy to split my workflow into multiple smaller 
>> Rmarkdown files that get compiled separately, provided there is appropriate 
>> support for this setup from the build system
> 
> The workflows have been standardized as packages. The packages put the
> workflow dependencies in the 'Depends:' field, with the idea being that
> the user installing the workflow package 'in the usual way' will get the
> packages used in the vignette installed in their system 'in the usual
> way' without having to execute special variants of biocLite() /
> install.packages() / funky code in the vignette itself to be able to
> build the vignette.
> 
> Loading a package loads its Depends: (and Imports:) so triggers the problem.
> 
> Writing separate vignettes would not help with this (but might make the
> workflow more palatable; I'm not 100% sure of support for separate work
> flows in a single package, there is no problem with having multiple
> workflow packages on the same general topic).
> 
> One could move (some?) packages to Suggests: and use your trick of
> unloading packages part-way through the vignette. But then users will
> find that they need to install packages to complete the vignette.
> 
> 'We' could add a support for a BBS option that increases R_MAX_NUM_DLLS,
> but that would allow the workflow to build on the build system, but not
> on the users' system.
> 
> I think also the R-core approach to this
> (https://stat.ethz.ch/pipermail/r-devel/2016-December/073529.html,
> https://github.com/wch/r-source/commit/757bfa1d7ff373a604d6d34617f9cad78e0c875e)
> is a little insightful, where one could imagine increasing the default
> R_MAX_NUM_DLLS, but apparently on some OS these compete for number of
> open files, and this in turn can be quite low.
> 
> I note that users have already struggled with the DLL problem 'in the
> wild' https://stackoverflow.com/a/45552926/547331. This seems
> particularly problematic for workflows, which are appealing to
> relatively novice users.
> 
> At the end of the day I think the workflows should make realistic use of
> R resources. I think this means modifying the workflow to use fewer
> DLLs. (this general comment is relevant to other workflows, which for
> instance start by downloading very large data sets -- I know that less
> constrained use of computing resources is supposed to be a selling point
> of the workflows, but in excess this seems counter-productive to their
> primary use as pedagogic tools [rather than, for instance, comprehensive
> exemplars of reproducible research]).
> 
> Maybe there is additional discussion about some of the technical aspects
> of workflows that others might contribute.
> 
> Martin
> 
>> 
>> 
>> Cheers
>> 
>> 
>> Aaron
>> 
>> ________________________________
>> From: Bioc-devel 
>> <bioc-devel-boun...@r-project.org<mailto:bioc-devel-boun...@r-project.org>> 
>> on behalf of Aaron Lun <a...@wehi.edu.au<mailto:a...@wehi.edu.au>>
>> Sent: Wednesday, 21 June 2017 12:09:13 AM
>> To: bioc-devel@r-project.org<mailto:bioc-devel@r-project.org>
>> Subject: [Untrusted Server]Re: [Bioc-devel] strange error in Jenkins build 
>> forsingleCellWorkflow
>> 
>> Hi all,
>> 
>> 
>> I'm getting a curious error in the Jenkins log when I try to build the 
>> singleCellWorkflow:
>> 
>> 
>> http://docbuilder.bioconductor.org:8080/job/simpleSingleCell/48/label=master/console
>> 
>> 
>> The key part is at the bottom:
>> 
>> 
>> Error: package or namespace load failed for 'GenomicFeatures' in 
>> dyn.load(file, DLLpath = DLLpath, ...):
>>  unable to load shared object 
>> '/var/lib/jenkins/R/x86_64-pc-linux-gnu-library/3.4/Rsamtools/libs/Rsamtools.so':
>>   `maximal number of DLLs reached...
>> 
>> 
>> The workflow had previously been running fine on the build system; I'm not 
>> quite sure what's going on here, given that it's not even failing at the 
>> point where I made the latest changes.
>> 
>> Cheers,
>> 
>> Aaron
>> 
>>         [[alternative HTML version deleted]]
>> 
>> _______________________________________________
>> Bioc-devel@r-project.org<mailto:Bioc-devel@r-project.org> mailing list
>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>> 
>>       [[alternative HTML version deleted]]
>> 
>> _______________________________________________
>> Bioc-devel@r-project.org<mailto:Bioc-devel@r-project.org> mailing list
>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>> 
> 
> 
> This email message may contain legally privileged and/or confidential 
> information.  If you are not the intended recipient(s), or the employee or 
> agent responsible for the delivery of this message to the intended 
> recipient(s), you are hereby notified that any disclosure, copying, 
> distribution, or use of this email message is prohibited.  If you have 
> received this message in error, please notify the sender immediately by 
> e-mail and delete this email message from your computer. Thank you.
> 
>        [[alternative HTML version deleted]]
> 
> _______________________________________________
> Bioc-devel@r-project.org<mailto:Bioc-devel@r-project.org> mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel
> 
> 
>       [[alternative HTML version deleted]]
> 
> _______________________________________________
> Bioc-devel@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel

_______________________________________________
Bioc-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel

Reply via email to