Commit Graph
126 Commits
Author SHA1 Message Date
szznax 9f77412581 part of fix for HER-1627 incorrect source tag in crawl.log (of persist-loaded crawl)
* EnhancedEnvironment.java
    in getClassCatalog(), when read-only env, insist on read-only catalog
* PersistLoadProcessor.java
    remove existing curi members from prior to prevent clobbering source
* PersistProcessor.java
    set historyDbConfig read-only, set je.log.faultReadSize for
        compatability with BDBModule.setup()
2010-03-23 20:52:40 +00:00
szznax af85fed7f4 part of fix for HER-1748 Arc2Warc should generally write WARC "response" records for ARC HTTP responses
* Arc2Warc.java
    reverted writing ARC namedFields, deferred for further analysis as part of HER-1750
2010-03-12 23:44:07 +00:00
szznax cc8ea6494a changed namedField "ARC-Compressed-Offset" to "ARC-Gzip-Offset" for even more clarity 2010-03-11 15:59:10 +00:00
szznax 4802e5093e part of fix for HER-1748 Arc2Warc should generally write WARC "response" records for ARC HTTP responses
* Arc2Warc.java
    changed namedField "ARC-Offset" to "ARC-Compressed-Offset" for clarity
2010-03-11 01:45:49 +00:00
szznax 8a567c9bc0 part of fix for HER-1748 Arc2Warc should generally write WARC "response" records for ARC HTTP responses
* Arc2Warc.java
    removed unnecessary URISyntaxException import
    moved ARC named fields outside of check for IP in header field
2010-03-10 00:33:38 +00:00
szznax 65f962dc25 whitespace corrections 2010-03-08 18:07:30 +00:00
szznax 65d552ce5c fix for HER-1748 Arc2Warc should generally write WARC "response" records for ARC HTTP responses
* Arc2Warc.java
    when HTTP response, write response record rather than resource
    enable reconstruction of ARC from WARC via namedFields
* ARCRecord.java
    added headerString and accessor to save verbatim ARC header string
2010-03-08 17:43:42 +00:00
szznax 3e5cf29315 nit correction in javadoc 2010-03-08 17:35:47 +00:00
nlevitt 86268def97 * LongToIntConsistentHash.java
Skip unnecessary conversion from CharSequence to String
2010-02-25 18:19:46 +00:00
gojomo 1a95e530e8 Clean-up where assumption of serializability no longer appropriate 2010-01-26 01:25:47 +00:00
gojomo 248f720cab Make Recorder facility usable independent of special crawler threads
* Recorder.java
    store reusable per-thread Recorder instance in Recorder static thread-local
* ToeThread.java
    setup reusable instance into Recorder
* RecorderMarker.java
    deleted -- unnecessary
2010-01-26 01:21:59 +00:00
nlevitt df6e31697d Rename short report methods:
- singleLineReport() -> shortReportLine()
 - singleLineReportTo() -> shortReportLineTo()
 - singleLineReportData() -> shortReportMap()
2009-12-09 02:53:02 +00:00
gojomo 04012279fc Misc logging-cleanup/refactoring
* CrawlerJournal.java
    improve exception logging
    combine writeLine() methods to use varargs
* FrontierJournal.java
    improve exception logging
* ArchiveUtils.java
    replace ignored  count parameter with meaingful boolean one
* CrawlURI.java
    use updated ArchiveUtils method
2009-12-04 22:23:48 +00:00
nlevitt 8ba641ed4b Part of [HER-1603] Restletify: xml representations of all resources that also
offer html
* XmlMarshaller.java
    new class to write xml based on nested map structure
* BeanBrowseResource.java ScriptResource.java EngineResource.java
  JobResource.java JobRelatedResource.java
    support xml representation
* WorkQueueFrontier.java PrecedenceProvider.java WorkQueue.java ToeThread.java
  ToePool.java CrawlJob.java Engine.java Frontier.java CrawlController.java
  StatisticsTracker.java CrawledBytesHistotable.java FetchStats.java
  ProcessorChain.java CrawlURI.java Reporter.java
    offer same data that is returned in the single line reports in a map
    suitable for use with XmlMarshaller
* FileUtils.java
    new method tryToCanonicalize(File)
2009-11-25 01:43:57 +00:00
gojomo a1022c8246 [HER-1711] Some Internationalized Domain Name seeds ignored by Heritrix
* EnhDirectoryResource.java
    ensure files shown for edit or written-back to disk handled as UTF-8
* ConfigFile.java
    read file as UTF-8
2009-11-25 01:14:59 +00:00
gojomo 5d843d46c1 * CachedBdbMap.java
remove unnecessary/build-breaking ServerCache import
2009-11-23 09:36:56 +00:00
gojomo faa8e899db * CachedBdbMap.java
remove unnecessary/build-breaking CrawlController import
2009-11-23 09:26:08 +00:00
gojomo 5b6b2fe954 BDBJE updates, refactoring
* BdbModule.java
    (openDatabase) all databases now 'managed'
    (getStoredMap) all reuse of prior data as for checkpoints
* (others)
    match above changes
2009-11-23 08:18:41 +00:00
gojomo 4127286a1c Checkpoint cleanup
* Checkpoint.java
    calculate shortName correctly
* CrawlerLoggerModule.java
    use full checkpoint-name for log-rotation-suffix
2009-11-23 08:10:07 +00:00
gojomo d93129115e BDBJE updates, refactoring
* CachedBdbMap.java
    update for BDB-JE 4.0.71 exception changes
2009-11-23 08:03:30 +00:00
gojomo eb9bf5a8e2 BDBJE updates, refactoring
* commons/pom.xml, .classpath
    update to BDB-JE 4.0.71
* BdbModule.java
    (getStoredQueue) added
    (getStoredMap) made more general
    (openDatabase) all databases now 'managed'
* TempStoredSortedMap.java -> DisposableStoredSortedMap.java
    renamed
* StatisticsTracker.java, **Report.java
    use new name
* StoredQueue.java, StoredQueueTest.java
    move to org.archive.bdb package
* BdbMultipleWorkQueues.java, PrefixFinderTest.java
    update for BDB-JE 4 changes
* BdbFrontier.java
    use getStoredQueue 
    drop unneeded custom serialization support
* WorkQueueFrontier.java
    drop unneeded custom serialization support
2009-11-23 04:41:32 +00:00
gojomo 25a568fff7 [HER-1546] Springify(5): Update checkpointing to work smoothly with spring-configured crawls
* JobResource.java
    suppress checkpoint-selector after terminate
* Checkpoint.java
    adapt to work without direct reference to CheckpointService
* CheckpointService.java
    configure Checkpoint without making it dependent on CheckpointService
2009-11-20 01:24:57 +00:00
gojomo daab317c94 [HER-1546] Springify(5): Update checkpointing to work smoothly with spring-configured crawls
processor-related bean checkpoint support:
* Checkpoint.java
    move to commons for proper dependency graph
* (others) 
    recognize above
2009-11-20 01:10:32 +00:00
gojomo 6481081697 * DefaultWriterPoolSettings.java
remove obsolete serialization/checkpoint support
2009-11-20 00:50:17 +00:00
gojomo fbd3af35ac [HER-1546] Springify(5): Update checkpointing to work smoothly with spring-configured crawls
* PersistLogProcessor.java
    rotate logs on checkpoint
* CrawlerJournal.java, FrontierJournal.java
    rotate for checkpoint support without full Checkpointable
2009-11-20 00:47:54 +00:00
gojomo 8591002573 [HER-1546] Springify(5): Update checkpointing to work smoothly with spring-configured crawls
* BdbModule.java
    implement Checkpointable; save/restore consistent sets of jdb log files
* BdbModuleTest.java
    testDoCheckpoint
2009-11-20 00:45:07 +00:00
gojomo f01ad9ada8 [HER-1546] Springify(5): Update checkpointing to work smoothly with spring-configured crawls
stats & logging checkpoint support
* StatisticsTracker.java
    implement Checkpointable; save small state in JSON, recycle BDB data when recovering
* CrawlerLoggerModule.java
    implement Checkpointable; rotate logs on checkpoint
* GenerationFileHandler.java
    avoid clobbering leftover logs from earlier futures via moveAside
* CrawlStatSnapshot.java
    (sameProgressAs) test for lack-of-progress
* ObjectIdentityMemCache.java, TopNSet.java
    offer deeper access to assist checkpoint/resume
2009-11-19 23:18:15 +00:00
gojomo bdf4437ca2 [HER-1546] Springify(5): Update checkpointing to work smoothly with spring-configured crawls
core checkpointing system classes:
* Checkpointable.java
    basic interface for checkpoint aware/capable beans
* Checkpoint.java
    one Checkpoint, either in progress or recovery -- a name + storage directory
* CheckpointService.java
    helper bean to enable, trigger checkpoints and recovery 
* Checkpointer.java(*2), CheckpointInputStream.java, CheckpointRecovery.java DefaultCheckpointRecovery.java, RecoverAction.java
    (deleted) no longer used
2009-11-19 22:45:07 +00:00
gojomo e42e2ed7f6 Cleanup/consolidation/expansion of *Utils classes
* IoUtils.java
    remove class that confusingly-overlaps with commons IOUtils; move remaining methods to ArchiveUtils or archive's FileUtils
* ArchiveUtils.java, FileUtils.java
    receive relocated methods; eliminated deprecated or unused methods
* JSONUtils.java
    new class to collect common JSON actions
* Iteratorable.java
    wrap Iterator as Iterable for foreach usage
* (many)
    update to use alternate utils methods
2009-11-19 22:39:53 +00:00
gojomo 2cb91e33f5 Fix or suppress warnings 2009-11-19 21:55:43 +00:00
nlevitt 148c7332c4 Merge ServerCache+ServerCacheUtil abstract superclass ServerCache
* ServerCache.java
    make abstract, implement getHostFor(UURI) and getServerFor(UURI)
* DefaultServerCache.java
    extend ServerCache, remove getHostFor(UURI) and getServerFor(UURI)
* ServerCacheUtil.java
    removed
* other classes
    change usage of ServerCacheUtil to ServerCache
2009-11-17 06:10:42 +00:00
nlevitt f9843974bc Update commons-net to 2.0 to incorporate fix to this bug -
http://issues.apache.org/jira/browse/NET-36 - we saw the problem manifest in an
archive-it crawl.
* ClientFTP.java
    override buggy org.apache.commons.net.ftp.FTP.getReplyStrings() with fixed
    version, see https://issues.apache.org/jira/browse/NET-257
* .classpath, commons/pom.xml
    update dependency to 2.0 jar
2009-11-17 02:49:57 +00:00
gojomo 9059395617 Make Bloom size configurable without system properties
* BloomUriUniqFilter.java
    make bloom size configurable via bean properties
    change implementing class to BloomFilter64bit (given growing prevalance of 64bit JVMs and larger heaps)
* BloomUriUniqFilterTest.java
    update test for property-set sizing
* BloomFilter64bit.java
    improve comment
2009-11-16 22:42:18 +00:00
nlevitt b72750691f [HER-1694] support for storing ftp fetches in warcs, along with improvements to
ftp fetching, to match h1 ftp competency
2009-11-13 02:58:56 +00:00
nlevitt 3b5e9f7c45 Improve pretty printing of arrays, in particular the fetch-history array. 2009-11-13 02:21:38 +00:00
nlevitt 671f21ede6 Include thread id in log line format 2009-11-12 02:50:13 +00:00
nlevitt 3e08d49640 Use json library jar instead of copy&pasted code. 2009-11-11 02:30:39 +00:00
gojomo 91ffdac6d9 [HER-1561] update license to Apache License 2.0
* ScopePlusOneDecideRule.java
    removing, in favor of SurtPrefixedDecideRule's 'alsoCheckVia' option
* RecyclingFastBufferedOutputStream.java
    use library by deriving as subclass (rather than c&p), now that class is available in an included library (fastutil)
2009-11-11 01:40:43 +00:00
gojomo ce79e8a76e [HER-1561] update license to Apache License 2.0
* SeekReader.java
   update to Apache
* RecoveryLogMapper.java
   revert to LGPL pending verification of authors' approval for relicensing
2009-11-11 00:28:03 +00:00
gojomo dd0ca367c3 [HER-1706] PersistLoadProcessor and PersistStoreProcessor can't share same BdbModule
* BdbModule.java
    allow Database instance reuse if BdbConfig is identical instance
* PersistProcessor.java
    convert shared BdbConfig for history db to static constant HISTORY_DB_CONFIG
* PersistOnlineProcessor.java
    use HISTORY_DB_CONFIG, don't close possibly-shared DB on stop()
* PrecedenceLoader.java, PreloadedUriPrecedencePolicy.java
    use HISTORY_DB_CONFIG
2009-11-10 23:48:10 +00:00
gojomo 0497efbb32 [HER-1561] update license to Apache License 2.0
* (many)
    update license boilerplate
* (few)
    delete no-longer used classes
2009-11-10 21:03:27 +00:00
gojomo c2c0e5116e [HER-1705] 'harmless' low-memory-canary causing heap reference leak/OOME
* CachedBdbMap.java, ObjectIdentityBdbCache.java
    only reinstall canary if map/cache still has 'db' field
2009-11-09 03:55:12 +00:00
gojomo 11048de24c [HER-1703] convert all maps that operator might want to change on the fly to concurrent maps
* KeyedProperties.java
    derive from ConcurrentHashMap
* Sheet.java
    ensure internal map is always a concurrent-map (even when setMap is passed something else)
* SheetOverlaysManager.java
    convert ruleAssociations, sheetNamesBySurt, sheetsByName to concurrent implementation classes
* ScriptedProcessor.java, ScriptedDecideRule.java
    convert sharedMap to concurrent implementation
* DecideRuledSheetAssociation.java
    ensure non-equal associations don't compareTo()==0 (implying equals, causing problems in sorted maps/sets)
2009-11-07 03:07:51 +00:00
gojomo 648ef7deef Fix issues with surt-source, surt-dump file paths
* ConfigPathConfigurer, PathFixupListener
    notify beans when paths fixed
* SurtPrefixedDecideRule.java
    only read source prefixes after path fixup; dump after read or any batch of seeds
* SeedModule.java, TextSeedModule.java, SeedListener.java
    new concludedSeedBatch event 
* AbstractFrontier.java, StatisticsTracker.java
    ignore new concluded-batch event
* AlertThreadGroup.java, JobResource.java
    new mechanism for threads not part of AlertThreadGroup to temporarily redirect their logging to provided (job) logger
2009-10-26 11:29:58 +00:00
gojomo 59003e22ab Fix issues with surt-source, surt-dump file paths
* ConfigPathConfigurer, PathFixupListener
    notify beans when paths fixed
* SurtPrefixedDecideRule.java
    only read source prefixes after path fixup; dump after read or any batch of seeds
* SeedModule.java, TextSeedModule.java, SeedListener.java
    new concludedSeedBatch event 
* AbstractFrontier.java, StatisticsTracker.java
    ignore new concluded-batch event
* AlertThreadGroup.java, JobResource.java
    new mechanism for threads not part of AlertThreadGroup to temporarily redirect their logging to provided (job) logger
2009-10-26 11:27:09 +00:00
gojomo 2e31d58687 * ObjectIdentityBdbCache.java
replace costly bdb size() operation with maintained counter
2009-10-23 22:33:36 +00:00
gojomo 06223b2794 BDB JE tuning
* BdbModule.java
    increase je.log.faultReadSize from 2K to 6K -- stats showed many faults (ideal is zero)
2009-10-23 21:55:06 +00:00
gojomo 45f09818ae Fix intermittent ClassCastExceptions on job console
* Histotable.java, ToePool.java
    only tally Strings; convert all histotable keys to strings for sorting
2009-10-07 10:18:21 +00:00
gojomo b7631e2b02 Misc fixes from H1-to-H3 testing
* BdbModule.java
    be more robust about 0/-1 as 'don't care' values
* AbstractFrontier.java
    reorder settable properties for ease of discovery
* FetchHTTP.java
    correct type to allow setting property
2009-10-07 04:22:05 +00:00
gojomo 258da53d57 [HER-1676] improve bundled profiles to match best-practice, be self-documenting
* profile-crawler-beans.cxml
    add comments for all unstated default values an operator might want to change
* (many) 
    reorder, refactor, rename to better minimize/match simple configuration
2009-10-06 19:35:05 +00:00